gcc 4.7和4.8的安装会在同一台机器上和平共存吗?这最初是一台带有Ubuntu 12.10(Quantal Quetzal)的机器,但可能会延伸到其他机器和发行版,甚至可能扩展到我的mac(它将是4.8和最后一个在Mountain Lion上提供的苹果gcc)。我试图在4.8中测试gcc的改进诊断,将它们与clang进行比较,因此我需要gcc 4.8。
如果上面的答案是肯定的,你如何调用gcc的每个安装?
答案 0 :(得分:4)
首先关闭:是的,您可以在计算机上安装多个gcc。
如果从默认的Ubuntu存储库安装gcc,则可以使用gcc-4.6
,gcc-4.7
,....调用不同的版本.Ubuntu工具链测试存储库ubuntu-toolchain-r/test
具有gcc-4.7包。 AFAIK它还没有gcc-4.8包。存在其他维护gcc包的存储库(即使对于当前的4.8开发版本;只需google用于ubuntu gcc存储库)。
除此之外,您始终可以从源代码(http://gcc.gnu.org/install/index.html)编译gcc并拥有多个版本(http://gcc.gnu.org/faq.html#multiple)。
答案 1 :(得分:2)
根据gcc常见问题解答,您可以安装多个版本。请查看此链接http://gcc.gnu.org/faq.html#multiple
答案 2 :(得分:2)
如果你自己构建GCC(确保在源目录之外有构建目录),你可以例如../gcc-trunk-srcdir/configure
与... --program-suffix=-trunk
(可能还有一些--prefix
)然后它将安装为gcc-trunk
,g++-trunk
等。因此您可以安装多个版本的GCC。
但是,我建议避免使用GCC混合编译程序。使用相同的GCC编译给定的应用程序或库。请注意,您可能会在libstdc++
库周围遇到轻微的不兼容性。
不要忘记最近GCC的--enable-plugins
选项(遗憾的是,此选项默认情况下未启用,IIRC)。您甚至可能会尝试使用MELT(一种高级域特定语言来扩展GCC)。
在某些发行版中,GCC中继的最近快照可能打包为gcc-snapshot