我需要使用gcc-4.8及更高版本提供的c ++ 11库运行特定程序。我正在尝试运行该程序的远程HPC具有gcc-4.6.1。我能够在用户指定的目录中在HPC上安装gcc-4.8.2版本 /共享/用户/ gccInstall
(gccInstall有安装后得到的/ bin和/ lib(etc)文件夹) 我需要切换到这个版本来编译我的程序。我尝试使用update-alternatives --config gcc,但它没有返回任何内容。 任何人都可以帮我解决这个问题!
修改: 能够使用以下命令更改gcc版本: setenv PATH / share / user / gccInstall / bin setenv LD_LIBRARY_PATH / share / user / gccInstall / lib
现在gcc --version返回4.8.2。 但在编译时遇到另一个错误: g ++:错误尝试执行'as':execvp:没有这样的文件或目录 我错过了什么?
非常感谢。
答案 0 :(得分:0)
如果您要使用不同版本的g ++,请确保根据$PATH
获得正确的g ++,或者指定所需g ++的完整路径。另一件需要注意的事情是,您可能需要更新$LD_LIBRARY_PATH
环境变量以从新的gcc安装中获取必要的库。
您遇到的问题究竟是什么?你能编译但不能运行吗?编译失败了吗?您有可以分享的错误消息吗?
答案 1 :(得分:0)
假设您说新的GCC安装是
在/share/user/gccInstall
下,然后添加选项
-B/share/user/gccInstall
每次g++
或gcc
的调用都会有这个
效果:
-Bprefix 此选项指定在何处查找编译器本身的可执行文件,库,包含文件和数据文件。
(来自Options for Directory Search)
这应该有所帮助,也许就足够了。