首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >编译错误:"g++:尝试执行‘cc1plus’时出错: execvp:没有这样的文件或目录“

编译错误:"g++:尝试执行‘cc1plus’时出错: execvp:没有这样的文件或目录“
EN

Stack Overflow用户
提问于 2012-01-16 18:26:45
回答 9查看 165.5K关注 0票数 116

当我在php中用popen编译C/C++程序时...我得到了这个错误:

代码语言:javascript
复制
g++: error trying to exec 'cc1plus': execvp: No such file or directory

但是如果我在shell中运行php代码..它工作得很好。

在Arch Linux中..

PHP代码:

代码语言:javascript
复制
<?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;
?>

谢谢

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2014-01-16 14:20:09

您需要安装gcc-c++包。

代码语言:javascript
复制
yum install gcc-c++
票数 150
EN

Stack Overflow用户

发布于 2014-02-27 22:59:19

我不知道为什么,但我只是将我的源文件COLARR.C重命名为colarr.c,错误消失了!也许你需要这个

代码语言:javascript
复制
sudo apt-get install g++
票数 63
EN

Stack Overflow用户

发布于 2014-04-13 07:17:28

如果安装了不同版本的g++和gcc,可能会出现此问题。

代码语言:javascript
复制
   g++ --version
   gcc --version

如果这些都不能给出结果,那么您可能安装了多个版本的“gcc”。您可以使用以下命令进行检查:

代码语言:javascript
复制
    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++在同一版本中运行,这可能会解决您的问题!

票数 28
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8878676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档