我们有一个新的应用程序需要glibc 2.4(来自gcc 4.1)。我们运行的机器有gcc 3.4.6。我们无法升级,应用程序必须在此计算机上运行。
我们安装了gcc 4.1,但是,在编译时它使用3.4.6中的所有包含等。
我们如何解决这个问题?
有关将4.1用于此应用程序的任何建议吗?
答案 0 :(得分:24)
答案 1 :(得分:3)
你试过gcc-select
吗?否则,请尝试在shell中设置INCLUDE_PATH
和LIBRARY_PATH
。
答案 2 :(得分:2)
你可能仍然执行旧的gcc。尝试从gcc
创建符号链接到您的版本,例如
ln -s gcc-4.1 gcc
请注意不要删除那里放置的旧“gcc”二进制文件,以防它们不只是放置符号链接。如果你可以重新编译你自己的gcc版本,最安全的只是在gcc的配置时使用另一个前缀,类似于--prefix=/home/jojo/usr/gcc
(我用svn-trunk的gcc-4.4这样做,并且效果很好)。
请注意,这只是运行正确的gcc版本。如果你更新你的gcc,你的glibc也不会自动更新。它是一个独立的包,与系统的其余部分深度耦合。安装另一个glibc版本时要小心。
答案 3 :(得分:2)
update-alternatives是拥有多个gcc版本的一种非常好的方法:
http://ubuntuguide.net/how-to-install-and-setup-gcc-4-1g4-1-in-ubuntu-10-0410-10
答案 4 :(得分:2)
对于Ubuntu来说非常简单
sudo apt-get update
sudo apt-get install gcc-6
然后安装例如gcc版本6
CompletableFuture<List<A>>