在 Mint 18.1 下,是否有关于如何(或我不能/不应该)为我自己的 C++ noodling 安装单独的 GCC 工具链的 HowTo 或信息?
我不想破坏常规系统中的任何内容,所以不想寻找新的 PPA?或者你用什么来代替它附带的5.4。我担心如果以后在内核升级中重新编译任何内容,我就会混合编译器二进制文件/库。
基本上,我会使用这个新的工具链在那个盒子上进行我自己的编码。不适合任何系统编译。
答案1
安装更新版本的 GCC 不太可能破坏任何东西。曾经有一段时间,在最新版本的 GCC 下编译 Linux 内核模块可能会导致奇怪的错误,但那是十多年前的事了。
尽管如此,为了避免承担任何风险,也为了避免包管理的麻烦,您可能更愿意单独安装其他版本。如果您希望能够使用多个编译器测试您的构建,我特别推荐这样做。尽管您可以安装多个版本的 GCC,但选择所需的版本并确保默认版本不会用于某些用途并不总是那么容易。运行make CC=gcc-4.2
很容易,但它不处理g++
、as
、ld
等,也不处理可能对工具名称进行硬编码而不是通过常规变量的命令。为了确保即使使用非协作构建脚本也能使用特定的工具链,请将其放在单独的目录中并将该目录放在/usr/bin
PATH 的前面。
GNU 推荐的安装 GCC 的方法是使用一系列命令从源代码进行编译,例如
tar -xzf gcc-4.2.tar.gz
mkdir gcc-4.2-native-bin
cd gcc-4.2-native-bin
../gcc-4.2/configure --prefix /opt/gcc-4.2 # plus a target to build a cross-compiler
make
sudo make install
答案2
您只需升级已安装的gcc
二进制文件即可。或者甚至安装多个版本,除了一些交叉编译版本之外,我总是出于某种原因最终安装了几个版本(在 Debian 上,而不是 Mint 上,但这应该不重要,它是相同的包管理器)。
它不会破坏任何东西。如果你像我一样自己编译内核,它甚至不会破坏任何东西。我也从未遇到过 DKMS 模块的问题。
如果如果它会损坏任何东西,您总是可以重新安装。所以无需谨慎。