gcc: error trying to exec ‘cc1plus’: execvp: no such file or directory 错误

问题描述

当我们在build模型或者cmask模型的时候,会出现该错误,导致问题的原因可能是因为没有安装 gcc 或者 g++,也可能是已安装的 gcc 和 g++ 版本不兼容

问题解决

(1)查看是否安装gcc

gcc -v

若有下面的版本信息,即已经安装
在这里插入图片描述

(2)安装gcc(若已经安装,跳过即可)

# 安装gcc,默认的安装后的位置是/usr/bin,可以选择自己对应的版本进行安装
sudo apt-get install gcc-5

cd /usr/bin

ls -l gcc*  #查看所有gcc版本

sudo ln -s gcc-5 gcc #新建软连接

gcc -v   #成功

(3)查看g++ 版本信息

g++ -v

在这里插入图片描述
可以看到,如果安装了g++,但是与gcc版本不一致,那这个错误就是版本不兼容导致的,直接看下面的第5点

(4)安装g++(若已经安装,跳过即可)

sudo apt-get install g++-5

cd /usr/bin

ls -l g++*  #查看所有g++版本

sudo ln -s g++-5 g++ #新建软连接

g++ -v   #成功

(5)版本不兼容问题

从上面可以看到,我们安装了gcc的版本是5,这边g++的版本是7(原因是我们安装了多个gcc,导致了gcc版本与g++的版本不一致)

两种解决办法,第一种就是安装一个g++版本的gcc版本,第二种就说安装一个gcc版本的g++版本信息,具体看你需要哪个版本

如果多版本gcc,如果切换:

先前已经有gcc5,安装gcc 6 并切换

sudo apt-get install gcc-6

cd /usr/bin

ls -l gcc*  #查看所有gcc版本

sudo mv gcc gcc.bak  #因为现在的gcc 是 gcc5 的软连接,所以先备份

sudo ln -s gcc-6 gcc #新建软连接

gcc -v   #成功

如果多版本g++,如果切换,同理

先前已经有g++5,安装g++ 6 并切换

sudo apt-get install g++-6

cd /usr/bin

ls -l g++*  #查看所有g++版本

sudo mv g++ g++.bak  #因为现在的g++ 是 g++5 的软连接,所以先备份

sudo ln -s g++-6 g++ #新建软连接

g++ -v   #成功
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐