项目场景:
Linux编译安装gcc找不到cc1plus
问题描述
g++: error trying to exec ‘cc1plus’: execvp:
原因分析:
网上很多说gcc和g++版本不匹配,说重新安装的。拜托,不要再抄袭了。
实际在linux系统中无法执行某个程序,
- 要么是目标文件真不存在,
- 要么存在,但是当前用户权限不足
编译安装的gcc,由于要安装到/usr/local
,所以需要高权限的用户。这时大家一般喜欢使用sudo make install
。这里比较容易出现问题,sudo之后权限并没有正确设置。很多相关目录、文件的权限是740,也就是说除了root,其他用户没有执行的权限。
解决方案:
- 找到cc1plus所在的目录
- 执行
sudo chmod 755 cc1plus
- 其他文件依次类推