Php 如何覆盖pecl安装包的默认配置选项

Php 如何覆盖pecl安装包的默认配置选项,php,lua,pecl,Php,Lua,Pecl,由于以下配置失败,我当前在安装PECL LUA包时遇到问题: pecl install channel://pecl.php.net/lua-0.9.4 给予 ... checking for lua support... yes, shared checking for lua in default path... not found configure: error: Please reinstall the lua distribution - lua.h should be in &l

由于以下配置失败,我当前在安装PECL LUA包时遇到问题:

pecl install channel://pecl.php.net/lua-0.9.4
给予

...
checking for lua support... yes, shared
checking for lua in default path... not found
configure: error: Please reinstall the lua distribution - lua.h should be in <lua-   dir>/include/
ERROR: `/tmp/pear/temp/lua/configure' failed
。。。
正在检查lua支持。。。是的,共享
正在检查默认路径中的lua。。。找不到
配置:错误:请重新安装lua发行版-lua.h应在/include中/
错误:`/tmp/pear/temp/lua/configure'失败

查看了tarball之后,configure脚本似乎将接受“-with lua”覆盖以传递lua头的已知位置。但是,如何使用pecl安装程序传递此信息是完全不明显的。

好吧,每个
配置
脚本都允许您传递自定义
CFLAGS
LDFLAGS
。这允许您执行以下操作:

CFLAGS="-I/path/to/lua/include" LDFLAGS="-L/path/to/lua/lib" ./configure

使用<代码> CXXFLAGG/<代码>如果源是C++,

,包中似乎有配置魔法被破坏了。最后,我不得不硬连线一些路径:

ln -s /usr/include/lua /usr/include/lua5.1
ln -s /usr/lib/liblua5.1.a liblua.a
ln -s /usr/include/lua/* /usr/include

已经足够让编译器通过了。

我在ubuntu上解决了一个类似的问题:17.10版本的lua5.3和php7.1版本

pecl download lua
tar xvzf lua-2.0.4.tgz
cd lua-2.0.4
phpize
./configure --with-lua-version=5.3
make
make install

不幸的是,CFLAGS似乎通过“pecl安装”调用被压扁了。嗨,我也有同样的问题。在安装lua之后,我找不到liblua.a文件:apt get install lua5.1 liblua5.1-0 liblua5.1-0-dev