PHP使用exec命令执行外边程序失败问题

说明:当初我遇到的问题是,通过PHP调用Python,在终端命令行下可以执行,在浏览器上不能运行,返回的状态码是127。最后通过输出log信息发现问题是

/opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.14' not found

转载自: http://www.lai18.com/content/8979210.html




大概的错误提示:
/opt/lampp/lib/libstdc++.so.6:    version `GLIBCXX_3.4.13' not found
 
解决方案:
cd /opt/lampp/lib/
 
strings /opt/lampp/lib/libstdc++.so.6 | grep -i glic
发现确实是缺少了GLIBCXX_3.4.13
 
locate libstdc++.so   #查找系统里面的文件
输出:
/opt/lampp/lib/libstdc++.so.6
/opt/lampp/lib/libstdc++.so.6.0.8
/usr/lib/gcc/x86_64-redhat-linux/4.4.4/libstdc++.so
/usr/lib/gcc/x86_64-redhat-linux/4.4.4/32/libstdc++.so
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.13
/usr/share/gdb/auto-load/usr/lib/libstdc++.so.6.0.13-gdb.py
/usr/share/gdb/auto-load/usr/lib/libstdc++.so.6.0.13-gdb.pyc
/usr/share/gdb/auto-load/usr/lib/libstdc++.so.6.0.13-gdb.pyo
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.13-gdb.py
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.13-gdb.pyc
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.13-gdb.pyo
 
 
strings /usr/lib64/libstdc++.so.6 | grep -i glic
输出:
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBC_2.2.5
GLIBC_2.3
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
 
发现有我要的版本,因为libstdc++.so.6是向下兼容,所有拷贝文件到/opt/lampp/lib/中覆盖下(备份先)
mv libstdc++.so.6 libstdc++x.so.6.back
mv libstdc++.so.6.0.8 libstdc++x.so.6.0.8.back
 
建立连接:
ln -s /usr/lib64/libstdc++.so.6 libstdc++.so.6
cp /usr/lib64/libstdc++.so.6.0.13 libstdc++.so.6.0.13
 
然后,就发现php的exec可以执行程序了~


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值