php - 构建 libphp5.so 以嵌入 C/C++

标签 php c++ c macos linker

我一直在尝试在 OSX 上使用 --enable-embed 配置选项构建和链接 libphp5.so。此操作未成功完成,失败的主要原因是在链接阶段未找到目标文件。

有报告称 --enable-embed 选项在 OSX 上已被破坏很长时间。

有人成功地将 Zend Engine 函数链接并嵌入到 C/C++ 应用程序中吗?

最佳答案

经过多次失败的尝试,我终于成功了。下面是一个配置字符串,它将在 OSX 上为 PHP 5.3.6 构建 libphp5.a 库:

./configure --enable-embed=static --disable-libxml --disable-dom --disable-simplexml --disable-xml --disable-xmlreader --disable-xmlwriter --without-pear --without-iconv

然后,在链接到 C/C++ 代码时,需要添加 libresolv 以防止与 Zend Engine 中的 DNS 函数相关的链接错误。例如:

g++ -o yourapp src/main.o -Lpath/to/libs -lphp5 -lresolv

希望有一天这会对某人有所帮助:-)

关于php - 构建 libphp5.so 以嵌入 C/C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6953864/

相关文章:

c++ - 如何使用带有重载的enable_if

c++ - 包含所述对象 vector 的对象的析构函数

c - 整数和长整数的大小?

javascript - 从选定的下拉列表中将值附加到文本区域而不删除以前的值

php - 如何使用sql查询从另一个表中获取数据?

java - 如果在网络服务器上运行,rand(时间戳)如何工作?

c++ - 'cout'将整数显示为十六进制

AVR 应用的 C - ISR 重复

python - 游戏;制作 C 扩展

php - 无法使用android mobile访问localhost