Phiwrapper打包胖“二进制”的工具
phiwrapper 是一个用于打包胖“二进制”的工具
phiwrapper可以通过batsh使得同一文件包含不同平台的二进制,可以在不同平台运行:例如,使用phiwrapper打包 Windows 的 PHP PE 二进制和,linux的ELF二进制以及php代码,在Windows下可以双击运行file.bat文件开启服务,linux下可以用sh ./file.bat
运行相同的PHP代码
目前phiwrapper支持Windows 7+和x86_64的linux、macOS系统
TODOs && WIPs
- zip.js -- zip.js 还没有实现,你需要手动打包code和bin目录的zip到build/build.zip
- 支持命令行参数、完整的清理、提升权限...
- 测试和自动化测试
- x86 unix-like系统兼容
- 更多架构系统兼容
- unzip体积裁剪
打包用法
依赖(Windows)
没有依赖
依赖(Unix-like)
需要nodejs
准备二进制文件
准备phiwrapper的二进制到tools目录
git clone https://github.com/longyan/phiwrapper_binaries tools
自行准备需要的二进制放置于任意子目录
例如从windows.php.net下载windows PHP二进制包,解压到bin/win
静态编译linux的php,放在bin/linuxx64
准备代码
将平台无关的代码放在任意子目录(例如code/index.html, code/hello.php)
配置
复制config.js.example为config.js, 参照文件内容创建配置
打包
mkwrapper.bat
./mkwrapper.sh
限制
phiwrapper仅仅是将多个二进制文件置于压缩包中,并非类似Mach-O的原生胖二进制,因此文件体积较大,建议针对性对要包含的二进制文件进行裁剪。
青岛龙之言软件有限责任公司由国内著名的 Swoole团队和 禅道团队合资成立。Swoole团队是业内知名的PHP底层开发团队,为PHP贡献了协程、加密、监控等多种方案,有力地弥补了PHP在高并发高性能场景的短板。禅道团队是PHP语言的重度用户,先后使用PHP语言开发了四款开源软件。两个团队在PHP社区上都有深厚的感情,都想为PHP社区做些自己的贡献。于是就诞生了龙之言这个公司。
龙之言公司主要的使命就是弥补PHP的短板,完善PHP的生态,为中国的PHP用户提供有力的技术支持。我们主要的工作方向有如下几个:
- 提高PHP在高性能高并发场景的适用性
- 适配国产化操作系统
- 完善各种类库
- 加强PHP对人工智能场景的支持
- 加强PHP在物联网场景的支持
- 加强PHP在打包安装方面的支持
我们的项目将主要以开源的方式来进行发布,如果您有什么好的想法,或者痛点,或者想参与到我们的开发中来,欢迎和我们联系。我们的联系方式: guoxinhua@swoole.com