当我在php
中用popen
编译C/C++程序时...我得到了这个错误:
g++: error trying to exec 'cc1plus': execvp: No such file or directory
但是如果我在shell中运行php代码..它工作得很好。
在Arch Linux中..
PHP代码:
<?php
function rfile($fp) {
$out="";
while (!feof($fp)) {
$out.= fgets($fp, 1024000);
}
return $out;
}
$p = popen('g++ -Wall -g aplusb.cc -o aplusb 2>&1', 'r');
$result = rfile($p);
pclose($p);
echo $result;
?>
谢谢
发布于 2014-01-16 14:20:09
您需要安装gcc-c++
包。
yum install gcc-c++
发布于 2014-02-27 22:59:19
我不知道为什么,但我只是将我的源文件COLARR.C重命名为colarr.c,错误消失了!也许你需要这个
sudo apt-get install g++
发布于 2014-04-13 07:17:28
如果安装了不同版本的g++和gcc,可能会出现此问题。
g++ --version
gcc --version
如果这些都不能给出结果,那么您可能安装了多个版本的“gcc”。您可以使用以下命令进行检查:
dpkg -l | grep gcc | awk '{print $2}'
通常,/usr/bin/gcc会被系统链接到/etc/alternatives/gcc,后者也会被系统链接到/usr/bin/gcc-4.6或/usr/bin/gcc-4.8 (如果您安装了gcc-4.6,gcc-4.8 )。
通过更改此链接,您可以使gcc和g++在同一版本中运行,这可能会解决您的问题!
https://stackoverflow.com/questions/8878676
复制相似问题