我最近尝试降级到gcc 4.7,因为我正在使用的cfd代码未使用最新的gcc版本进行编译。但是在经历了许多错误并且代码仍然没有编译之后,我放弃了,我想回到最新的gcc和g ++编译器,但是看来我可能已经搞砸了。
当我做:
sudo update-alternatives --remove-all gcc
sudo update-alternatives --remove-all g++
sudo apt-get install gcc-6.2 g++-6.2
甚至gcc-5.1 g ++-5.1都给我以下错误
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package gcc-6.2
E: Couldn't find any package by glob 'gcc-6.2'
E: Couldn't find any package by regex 'gcc-6.2'
E: Unable to locate package g++-6.2
E: Couldn't find any package by glob 'g++-6.2'
E: Couldn't find any package by regex 'g++-6.2'
我之前也尝试过
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-6.2 g++-6.2
但它似乎不起作用。最后当我刚做
sudo apt-get install gcc
它说
Reading package lists... Done
Building dependency tree
Reading state information... Done
gcc is already the newest version (4:5.3.1-1ubuntu1).
我知道我仍然需要安装和配置替代方案,但是这样做不起作用如下
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5.3 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5.3 10
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 30
sudo update-alternatives --set cc /usr/bin/gcc
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 30
sudo update-alternatives --set c++ /usr/bin/g++
sudo update-alternatives --config gcc
sudo update-alternatives --config g++
抱歉,这结束了很长时间,如果您需要更多信息,请告诉我。谢谢!
编辑: 我实际上通过将上述代码中的gcc-5.3更改为gcc-5使其工作,因为这似乎是usr / bin中的名称。如果有人遇到相同的问题,我将保留它以备将来参考。
避免此类问题的一种方法是创建一个VM并在其中安装旧的编译器版本。
—
NZD
可以在安装中修复此修补程序。阅读软件包列表...完成构建依赖关系树正在读取状态信息...完成gcc已经是最新版本(4:7.3.0-3ubuntu2.1)。0已升级,0新安装,0已删除和36未升级。
—
JOC KERS
gcc
和g++
依赖包安装直接链接到默认依赖项,例如/usr/bin/g++ -> g++-5
。您是否尝试过简单地重新安装gcc
和g++
软件包?