我使用的是Ubuntu 18.04,我有两个使用更新替代方案管理的gcc/g++版本:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100 --slave /usr/bin/g++ g++ /usr/bin/g++-7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8
我可以使用以下命令切换编译器:
sudo update-alternatives --config gcc
我注意到我有下面的编译器链(在本例中是gcc-7/g++-7):/usr/bin/cc -> /etc/alternatives/cc -> /usr/bin/gcc -> /etc/alternatives/gcc -> /usr/bin/gcc-7 /usr/bin/c++ -> /etc/alternatives/c++ -> /usr/bin/g++ -> /etc/alternatives/g++ -> /usr/bin/g++-7
我也安装了clang-8和clang++-8,但/usr/bin
只包含clang-8和clang++-8,没有clang符号链接。我应该如何添加clang到更新替代工具?
发布于 2019-04-23 03:40:39
Clang不是GCC的一个版本,所以它不能被设置为/usr/bin/gcc
的替代品。不要试图覆盖它;你会破坏一些需要特定于GCC的特性的程序,而这些特性在Clang中是不可用的。
Clang可以设置为/usr/bin/cc
的替代方案。这是设置C编译器的标准方法,而且应该是相当安全的。(即便如此,如果由于假设Linux系统上的/usr/bin/cc
总是GCC而导致一些构建过程中断,我也不会感到惊讶。)
https://stackoverflow.com/questions/55800092
复制相似问题