由于程序兼容性问题,我需要将 GCC 降级到至少 4.9
我该怎么做?谢谢。
编辑:该程序是 Blender,我正在尝试进行 GPU 渲染。控制台弹出的具体错误是
CUDA version 7.5 detected, build may succeed but only CUDA 6.5 is officially supported.
Compiling CUDA kernel ...
"/usr/local/cuda/bin/nvcc" -arch=sm_52 -m64 --cubin "/usr/share/blender/2.76/scripts/addons/cycles/kernel/kernels/cuda/kernel.cu" -o "/home/matthew/.config/blender/2.76/cache/cycles_kernel_sm52_3A157B804910758CA7C526B5EF063D78.cubin" --ptxas-options="-v" --use_fast_math -I"/usr/share/blender/2.76/scripts/addons/cycles/kernel" -DNVCC -D__KERNEL_CUDA_VERSION__=75
In file included from /usr/local/cuda/bin/../targets/x86_64-linux/include/cuda_runtime.h:76:0,
from <command-line>:0:
/usr/local/cuda/bin/../targets/x86_64-linux/include/host_config.h:115:2: error: #error -- unsupported GNU version! gcc versions later than 4.9 are not supported!
#error -- unsupported GNU version! gcc versions later than 4.9 are not supporte
^
CUDA kernel compilation failed, see console for details.
Refer to the Cycles GPU rendering documentation for possible solutions:
http://www.blender.org/manual/render/cycles/gpu_rendering.html
Error: CUDA kernel compilation failed, see console for details.`
答案1
就像@steeldriver建议的那样,你需要使用update-alternatives。具体步骤3这个问题。由于此时 4.9 是 4.9.3,不受支持,因此您需要 4.8。
sudo 更新替代方案 --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 40 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8 sudo 更新替代方案 --install /usr/bin/gcc gcc /usr/bin/gcc-5 50 --slave /usr/bin/g++ g++ /usr/bin/g++-5
在运行安装程序之前请记住选择 gcc-4.8:
sudo 更新替代方案 --config gcc
然后切换回默认使用 gcc-5。
(由于你这样做是为了安装 CUDA SDK,所以我要补充一点,如果你想测试示例,你可能需要阅读这。
答案2
这个答案很危险因为它可能会损坏您的系统和系统上的 GCC 库并使您的系统无法使用。**使用此答案时要小心,并将其视为“最后的手段”答案。
卸载gcc5.4
sudo apt-get remove gcc g++
再次检查gcc:
gcc –version
安装 gcc 4.9/g++ 4.9
sudo apt-get install gcc-4.9 g++-4.9
检查版本:
g++-4.9 –version
链接到 gcc g++
ln -s /usr/bin/g++-4.9 /usr/bin/g++
ln -s /usr/bin/gcc-4.9 /usr/bin/gcc
检查版本:
g++ –v
gcc –v
引自这个博客以及我自己的安装