windows下編譯php7圖形庫php_ui.dll的示例分析

這篇“windows下編譯php7圖形庫php_ui.dll的示例分析”除了程序員外大部分人都不太理解,今天小編為了讓大家更加理解“windows下編譯php7圖形庫php_ui.dll的示例分析”,給大家總結了以下內容,具有一定借鑒價值,內容詳細步驟清晰,細節(jié)處理妥當,希望大家通過這篇文章有所收獲,下面讓我們一起來看看具體內容吧。

我們提供的服務有:網(wǎng)站設計制作、網(wǎng)站設計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、凌河ssl等。為近1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的凌河網(wǎng)站制作公司

php有什么用

php是一個嵌套的縮寫名稱,指的是英文超級文本預處理語言(php:Hypertext Preprocessor)的縮寫,它的語法混合了C、Java、Perl以及php自創(chuàng)新的語法,主要用來做網(wǎng)站開發(fā),許多小型網(wǎng)站都用php開發(fā),因為php是開源的,從而使得php經(jīng)久不衰。

具有圖形化編程才有意思,這幾天看到了php ui 圖形擴展,只是現(xiàn)在只能下載php 7.1的 本次教程編譯php7.2.6的 php ui

要是linux下編譯起來比較簡單 但是 windows下就麻煩些

編譯環(huán)境搭建

php7.2.6的編譯(windows環(huán)境)有幾個重要的不同.

1.php7.2采用 vc15(vs2017)編譯

2.php7的sdk php-sdk

3.編譯環(huán)境搭建更加簡單一些了.

具體環(huán)境搭建

安裝vc15編譯器

vs2017把編譯器 和 ide 分開了,因為我們只需要編譯器所以就不安裝vs2017了(直接安裝vs2017 免費版也可以)

注意win下單獨下載cmake 并配置到系統(tǒng)環(huán)境中

http://landinghub.visualstudio.com/visual-cpp-build-tools

點擊 下載地址 到下載頁面 在下面找到 "Visual Studio 2017 生成工具" 下載 安裝就可以了

注意選擇 vc相關的程序 下面是安裝的截圖

windows下編譯php7圖形庫php_ui.dll的示例分析

下載 php-sdk 解壓

https://github.com/Microsoft/php-sdk-binary-tools

解壓到 d:\php_sdk\ (假設我們準備使用 d:\php_sdk\ 作為編譯目錄)

這時 d:\php_sdk\ 下面應該有

windows下編譯php7圖形庫php_ui.dll的示例分析

在 J:\compiler\php\sdk\binary-tools 運行phpsdk-vc15-x86.bat

在 php_sdk 目錄 按住 shift 鍵 右鍵 點擊 "在此處打開命令行窗口"

在命令行窗口運行 "phpsdk-vc15-x86.bat"

注釋: 如果想編譯 64位版本就運行 x64,

結果如下圖(phpsdk目錄不太一樣)

windows下編譯php7圖形庫php_ui.dll的示例分析

運行 phpsdk_buildtree phpdev

這時候 J:\compiler\php\sdk\下面應該會有一個 phpdev 目錄

下載 libui

解壓到任意目錄

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

下載 pthreads-w32-2-9-1-release 點擊到下載頁面

pthreadVC2.lib 復制到 J:\compiler\php\sdk\phpdev\phpdev\vc15\x64\deps\lib

打開 pthread.h 開頭增加預處理 內容如下

#define HAVE_STRUCT_TIMESPEC
#define _TIMESPEC_DEFINED

將這個文件復制到

J:\compiler\php\sdk\phpdev\phpdev\vc15\x64\deps\include

下載 php ui

https://github.com/krakjoe/ui
如果有當前使用版本可直接下載
http://pecl.php.net/package/ui
手冊
http://php.net/ui

解壓到php ext目錄中并重命名為ui

進入 php-src 目錄,執(zhí)行

命令行 "cd /d J:\compiler\php\sdk\phpdev\vc15\x64\php-7.2.6" 進入 php 源碼目錄

命令行"phpsdk_deps --update --branch master" php會自動下載 需要的依賴包(以前需要手動下載php-dsp文件)

看到 successfully 字樣  說明下載完成

執(zhí)行 "buildconf"

命令行 執(zhí)行 "buildconf"

如果提示 沒有文件擴展“.js”的腳本引擎

可下載文件 運行解決 點擊跳轉

重新執(zhí)行 buildconf

結果如下 說明運行完畢

  1. $ buildconf  

  2. Rebuilding configure.js  

  3. Now run 'configure --help'

編譯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

然后執(zhí)行"nmake" 開始編譯

等待數(shù)分鐘(或者數(shù)10分鐘)后,在php-源碼目錄應該能夠找到 Release_TS 目錄看見 php-ui了

最后 pthreadVC2.dll 和 libui.dll 復制到php 根目錄

php-ui.dll 復制到 php ext目錄

php ini 新增

extension=ui

ok下面是運行截圖

windows下編譯php7圖形庫php_ui.dll的示例分析

感謝你的閱讀,希望你對“windows下編譯php7圖形庫php_ui.dll的示例分析”這一關鍵問題有了一定的理解,具體使用情況還需要大家自己動手實驗使用過才能領會,快去試試吧,如果想閱讀更多相關知識點的文章,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文題目:windows下編譯php7圖形庫php_ui.dll的示例分析
網(wǎng)站URL:http://bm7419.com/article36/pschpg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計公司、網(wǎng)站導航、面包屑導航用戶體驗、品牌網(wǎng)站制作營銷型網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設