编译php_libui.dll,deepin编译php UI桌面程序扩展
linux 编译php UI桌面程序扩展。先编译libui,再编译ui.编译ui扩展,使用php7.2可能导致无法加载ui.so扩展问题,我重新用php7.1编译才能是使用。一、 cmake# wget https://github.com/Kitware/CMake/releases/download/v3.18.0-rc3/cmake-3.18.0-rc3-Linux-x86_64.tar.g
linux 编译php UI桌面程序扩展。
先编译libui,再编译ui.
编译ui扩展,使用php7.2可能导致无法加载ui.so扩展问题,我重新用php7.1编译才能是使用。
一、 cmake
# wget https://github.com/Kitware/CMake/releases/download/v3.18.0-rc3/cmake-3.18.0-rc3-Linux-x86_64.tar.gz
# tar -xzvf cmake-3.18.0-rc3-Linux-x86_64.tar.gz
# ln -s /usr/local/cmake-3.18.0-rc3-Linux-x86_64/bin/cmake /usr/bin/
# cmake --version
二、 libui扩展
# apt-get install gcc g++ gtk+-3.0 console-setup
# git clone git://github.com/andlabs/libui
# cd libui
# git checkoutalpha3.5 //ui extension currently only works with alpha3.5 version of libui , 当前分支下有CMakeList.txt文件,否则报错:CMake Error: The source directory "/usr/local/src/php_ui/libui" does not appear to contain CMakeLists.txt
# cmake .
# make
# install ui.h /usr/include/
# install ui_unix.h /usr/include/
# install out/libui.so /usr/lib/
# install out/libui.so.0 /usr/lib/
三 php ui
# apt-get install m4 autoconf
#git clonehttps://github.com/krakjoe/ui.git
#cd ui
#phpize
# ./configure --with-php-config=/opt/lampp/bin/php-config
#make && make install
报错如下:
把box.c 第5个参数null去掉, githup 也有说明。
重新编译!
吃鲸!居然编译完成!
# vi /opt/lampp/etc/php.ini
添加: extension="ui.so"
别太高兴太早,make test 测试:
# make test
辛苦了这么久,编译成功了,居然用不了!!!!
PHP Warning: PHP Startup: Unable to load dynamic library 'ui.so'
--------------------------------------------------------------------------------
找了很久的文档,没有关于这个问题怎么解决方案……
于是开始切换php 7.1编译试试……
重复上面的命令:
# make clean
# /usr/local/php7.1/bin/phpize
# /configure --with-php-config=/usr/local/php7.1/bin/php-config
# make && make install
# make test
部分截图:
没有任何报错,继续输入命令:
# vi /usr/local/php7.1/lib/php.ini
添加:extension=ui.so
# /usr/local/php7.1/bin/php -m
吃鲸! 居然编译成功了!
运行官方提供的示例试试:
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)