返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >windows下编译php7图形库php_ui.dll的示例分析
  • 774
分享到

windows下编译php7图形库php_ui.dll的示例分析

2023-06-06 14:06:51 774人浏览 八月长安
摘要

这篇“windows下编译PHP7图形库php_ui.dll的示例分析”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“windows下编译php7图形库php_ui.dll的示例分析”,给大家总结了以下内容,具有一定借鉴价值,

这篇“windows下编译PHP7图形库php_ui.dll的示例分析”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“windows下编译php7图形库php_ui.dll的示例分析”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让我们一起来看看具体内容吧。

php有什么用

php是一个嵌套的缩写名称,指的是英文超级文本预处理语言(php:Hypertext Preprocessor)的缩写,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因为php是开源的,从而使得php经久不衰。

具有图形化编程才有意思,这几天看到了php ui 图形扩展,只是现在只能下载php 7.1的 本次教程编译php7.2.6的 php ui

要是linux下编译起来比较简单 但是 windows下就麻烦些

编译环境搭建

php7.2.6的编译(windows环境)有几个重要的不同.

php7.2采用 vc15(vs2017)编译

php7的sdk php-sdk

编译环境搭建更加简单一些了.

具体环境搭建

安装vc15编译器

vs2017把编译器 和 ide 分开了,因为我们只需要编译器所以就不安装vs2017了(直接安装vs2017 免费版也可以)

注意win下单独下载cmake 并配置到系统环境中

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:1298resources.rc.* 改成 resources.rc.res
cmake --build .
libui-alpha3.5\build\outout\libui.lib 和 out\libui.res 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\liblibui-alpha3.5ui.h 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\includeui_darwin.h 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\includeui_unix.h 复制到 J:\compiler\php\sdk\phpdev\vc15\x64\phpdev\vc15\x64\deps\includeui_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 目录,执行

命令行 "cd /d J:\compiler\php\sdk\phpdev\vc15\x64\php-7.2.6" 进入 php 源码目录

命令行"phpsdk_deps --update --branch master" php会自动下载 需要的依赖包(以前需要手动下载php-dsp文件)

看到 successfully 字样  说明下载完成

执行 "buildconf"

命令行 执行 "buildconf"

如果提示 没有文件扩展“.js”的脚本引擎

可下载文件 运行解决 点击跳转

重新执行 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

然后执行"nmake" 开始编译

等待数分钟(或者数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的示例分析”这一关键问题有了一定的理解,具体使用情况还需要大家自己动手实验使用过才能领会,快去试试吧,如果想阅读更多相关知识点的文章,欢迎关注编程网PHP编程频道!

--结束END--

本文标题: windows下编译php7图形库php_ui.dll的示例分析

本文链接: https://lsjlt.com/news/247266.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • windows下编译php7图形库php_ui.dll的示例分析
    这篇“windows下编译php7图形库php_ui.dll的示例分析”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“windows下编译php7图形库php_ui.dll的示例分析”,给大家总结了以下内容,具有一定借鉴价值,...
    99+
    2023-06-06
  • JavaScript中预编译的示例分析
    小编给大家分享一下JavaScript中预编译的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!JavaScript 预编...
    99+
    2024-04-02
  • Linux内核编译的示例分析
    小编给大家分享一下Linux内核编译的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   下载源代码Linux内核总是不断发展的,***的内核K...
    99+
    2023-06-16
  • 编译.NET Core 源码的示例分析
    小编给大家分享一下编译.NET Core 源码的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一:Windows 编译VS 2019 16.6(不要安装预览版)Win 10 专业版,最新版本 (1903/2004)...
    99+
    2023-06-14
  • PHP7进行数据库操作的示例分析
    这篇文章给大家分享的是有关PHP7进行数据库操作的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。更新 mysqli连接,推荐$conn = mysqli_connect('12...
    99+
    2023-06-14
  • centos中联合编译动态连接库的示例分析
    这篇文章给大家分享的是有关centos中联合编译动态连接库的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。什么是动态链接库 Windows上是dynamic linklibrary (DLL),后缀?xx...
    99+
    2023-06-10
  • 基于编译虚拟机jvm之openjdk编译的示例分析
    这篇文章给大家分享的是有关基于编译虚拟机jvm之openjdk编译的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。java只所以被推广,实际上很大原因是因为本身是跨平台的,很大作用是因为虚拟机的关系。一般...
    99+
    2023-05-30
    jvm 虚拟机 openjdk
  • PyQt5中图形视图框架的示例分析
    这篇文章将为大家详细讲解有关PyQt5中图形视图框架的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.QGraphicsItem图元类图元可以是文本、图片,规则几何图形或者任意自定义图形。该类已...
    99+
    2023-06-29
  • Scss编译输出风格的示例分析
    这篇文章主要介绍Scss编译输出风格的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!很多人从使用Scss的那一刻起,就被别人告诉了如何编译。所以,基本上也就只会一种命令编译方...
    99+
    2024-04-02
  • Vue3模板编译优化的示例分析
    小编给大家分享一下Vue3模板编译优化的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!编译入口了解过 Vue3 的同学肯...
    99+
    2024-04-02
  • Linux程序编译过程的示例分析
    小编给大家分享一下Linux程序编译过程的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!本文将介绍如何将高层的C/C++语言编写的程序转换成为处理器能够执...
    99+
    2023-06-15
  • Nginx源码编译安装的示例分析
    这篇文章将为大家详细讲解有关Nginx源码编译安装的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。rpm包安装比较简单,这里不做说明。对于大多数开源软件,如果找不到安装包,可以使用源码安装方式,源...
    99+
    2023-06-25
  • python图形用户界面的示例分析
    小编给大家分享一下python图形用户界面的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!python的图形用户界面python的图形用户界面msgbox...
    99+
    2023-06-26
  • 图形数据库的应用实例分析
    本篇文章为大家展示了图形数据库的应用实例分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。当你听到数据库一词时,你通常会想到的可能是一张表,其中每行都是单独的记录,...
    99+
    2024-04-02
  • Oracle PL/SQL编译警告PLSQL_WARNINGS的示例分析
    小编给大家分享一下Oracle PL/SQL编译警告PLSQL_WARNINGS的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 警告分類三種1.  &nbs...
    99+
    2024-04-02
  • Ivy编译器中增量DOM的示例分析
    这篇文章主要为大家展示了“Ivy编译器中增量DOM的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Ivy编译器中增量DOM的示例分析”这篇文章吧。作为“...
    99+
    2024-04-02
  • Android应用中apk反编译的示例分析
    这篇文章将为大家详细讲解有关Android应用中apk反编译的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。概述这里是Mac环境,如果是window环境的同学,在环境搭建和工具上可以选择Windo...
    99+
    2023-06-15
  • Linux内核编译与开发的示例分析
    这篇文章将为大家详细讲解有关Linux内核编译与开发的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一.Linux内核简介linux kernel map:linux 系统体系结构:linux k...
    99+
    2023-06-16
  • Ceph源码编译与打包的示例分析
    小编给大家分享一下Ceph源码编译与打包的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1clone repository源码打包docker 7u机器:lvjian100081200005.et15sqagit ...
    99+
    2023-06-04
  • CentOS7中图形配置网络的示例分析
    小编给大家分享一下CentOS7中图形配置网络的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Prerequisite Linux CentOS 7操作实...
    99+
    2023-06-10
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作