我试图使用此配置命令从源代码编译phpcompiler。g ++ - 4.6.real:错误:无法识别的选项'-R'
./configure --prefix=/opt/phc-0.3.0.1/ --with-php=/opt/php-5.3.17/
的配置错误是,
checking for exit in -lboost_regex-mt... no
checking for exit in -lboost_regex-mt... (cached) no
checking for exit in -lboost_regex... no
checking for exit in -lboost_regex... (cached) no
checking for exit in -lboost_regex... (cached) no
configure: error: Could not link against boost_regex
那是完全错误的,因为我有升压和boost_regex包安装。库和头文件。然后,我在config.log
文件
configure:17053: g++ -o conftest -g -O2 -L/lib/php5 -L/usr/lib/php5 conftest.cpp /usr/lib/libCrun.so.1 -lphp5 -L/opt/php-5.3.17//lib -R/opt/php-5.3.17//lib -ldl >&5
g++-4.6.real: error: /usr/lib/libCrun.so.1: No such file or directory
g++-4.6.real: error: unrecognized option '-R'
所以,对于这个unrecognized option '-R'
错误,许多-lboost_regex
支票未能挖这个!
我该如何解决这个问题?有没有我可以编辑修复它的文件?为什么使用-R
?我认为这将是-L
国旗。
在Linux上解决这类问题的一种方法是:运行'strace -o st.log -s 10240 -f -e open,读取./configure'来查看哪些文件被configure和它的子进程打开和读取。您可以搜索'st.log'来查看'-R'是从哪里读取的,并且有一点运气可以编辑相关文件。 – MvG
海湾合作委员会对它无法识别的选项(它过去默默地忽略它们)有了很多挑剔。 '-R'选项可能是为链接器设计的,所以当你发现它时,在它前面加上一个'-Wl'(没有空格)。另外请注意,'-R'连接器选项可能实际上应该是'-rpath'(如果参数是文件或目录,则'-R'的行为不同;如果它是一个目录,则它被视为'-rpath'选项)。 –
@MvG我不想这样跟踪它。它可以通过修改automake文件修复! –