Maison > Article > développement back-end > Expliquer comment compiler la bibliothèque graphique php7 php_ui.dll sous Windows
Recommandé (gratuit) : PHP7
Avoir une programmation graphique est intéressant, j'ai vu php ui ces jours-ci Graphiques extension, mais maintenant vous ne pouvez télécharger que ce tutoriel de php 7.1 pour compiler l'interface utilisateur php de php7.2.6
Il est plus facile de compiler sous Linux mais plus gênant sous Windows
Environnement de compilation configuration
Il existe plusieurs différences importantes dans la compilation de php7.2.6 (environnement Windows).
1.php7.2 est compilé avec vc15 (vs2017 )
2.php7's sdk php-sdk
3. La construction de l'environnement de compilation est plus simple.
Construction d'un environnement spécifique
Installer le compilateur vc15
vs2017 sépare le compilateur et l'ide Parce que nous n'avons besoin que du compilateur, nous n'avons pas besoin d'installer vs2017 (vous pouvez également installer directement la version gratuite vs2017)
Veuillez télécharger cmake séparément sous Win et configurez-le dans l'environnement systèmehttp://landinghub.visualstudio.com/visual-cpp-build-toolsVisual Studio 2017 Generation Tool" ci-dessous. Téléchargez-le et installez-le
Veillez à sélectionner celui lié au vc. Vous trouverez ci-dessous une capture d'écran de l'installation
Téléchargez php-sdk et décompressez-le
https:// github.com/Microsoft/php-sdk-binary-toolsMaintenez la touche Maj enfoncée et cliquez avec le bouton droit sur "Ouvrir la fenêtre de ligne de commande ici" dans le répertoire php_sdk "
Exécutez "phpsdk-vc15-x86.bat" dans la fenêtre de ligne de commande
Remarque : Si vous souhaitez compiler la version 64 bits, exécutez x64,
Le résultat est tel qu'indiqué ci-dessous (la table des matières de phpsdk est différente)
À ce moment J:compilerphpsdk Il devrait y avoir un répertoire phpdev ci-dessous
Télécharger libui
Extraire-le dans n'importe quel répertoire
mkdir build && cd build cmake -G"NMake Makefiles" NDEBUG ..
打开 CMakeFiles\libui.dir\build.make:1298 resources.rc.* 改成 resources.rc.res
cmake --build .
libui-alpha3.5\build\out out\libui.lib 和 out\libui.res 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\lib libui-alpha3.5 ui.h 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\include ui_darwin.h 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\include ui_unix.h 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\include ui_windows.h 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\include
Téléchargez pthreads-w32-2-9-1-release et cliquez pour télécharger la page
pthreadVC2.lib 复制到 J:\compiler\php\sdk\phpdev\phpdev\vc15\x64\deps\lib
Ouvrez pthread.h et ajoutez le contenu de prétraitement au début comme suit
#define HAVE_STRUCT_TIMESPEC #define _TIMESPEC_DEFINED
Copiez ce fichier dans
J:\compiler\php\sdk\phpdev\phpdev\vc15\x64\deps\include
Télécharger php ui
https:// github.com/krakjoe/ ui
Si vous disposez de la version actuelle, vous pouvez la télécharger directement
http://pecl.php.net/package/ui
Manuel
http://php.net/ui
Extraire dans le répertoire php ext et renommez-le en ui
Entrez dans le répertoire php-src, exécutez la
ligne de commande "cd /d J:compilerphpsdkphpdevvc15x64php-7.2.6" pour entrer dans le répertoire du code source php
Ligne de commande "phpsdk_deps --update --branch master" php téléchargera automatiquement les packages de dépendances requis (auparavant, vous deviez télécharger le php-dsp manuellement)
Voir avec succès Les mots indiquent que le téléchargement est terminé
Exécuter "buildconf"
Exécution de la ligne de commande "buildconf"
Si vous êtes invité à indiquer qu'il n'y a pas de moteur de script avec l'extension de fichier ".js"
Vous pouvez télécharger le fichier pour exécuter la solution et cliquer pour sauter
重新执行 buildconf
结果如下 说明运行完毕
编译php
configure --disable-all --enable-cli --enable-fd-setsize=2048 --enable-sanitizer --with-ui=shared --with-curl=shared --disable-cgi
扩展 --disable-zts --disable-cgi 编译出 windows 版本和 php-cgi.exe --disable-zts nts 非线程安全 --enable-shmop=shared 以dll 方式编译 php shmop 扩展
Makefile 如果链接提示库不存在 可修改makefile 修改如下 LIBS=kernel32.lib ole32.lib user32.lib advapi32.lib shell32.lib ws2_32.lib Dnsapi.lib psapi.lib bcrypt.lib comdlg32.lib Gdi32.lib comctl32.lib version.lib d2d1.lib dwrite.lib windowscodecs.lib dxgi.lib d3d12.lib ScrnSave.Lib USP10.Lib UxTheme.lib
然后执行"nmake" 开始编译
等待数分钟(或者数10分钟)后,在php-源码目录应该能够找到 Release_TS 目录看见 php-ui了
最后 pthreadVC2.dll 和 libui.dll 复制到php 根目录
php-ui.dll 复制到 php ext目录
php ini 新增
extension=ui
ok下面是运行截图
下面是编译好了的
点击到下载页面
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!