cuda11与gcc10不兼容错误

/usr/include/c++/10/chrono:473:154:   required from here
/usr/include/c++/10/chrono:428:27: internal compiler error: 段错误
  428 |  _S_gcd(intmax_t __m, intmax_t __n) noexcept
      |                           ^~~~~~
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.
error: command '/usr/local/cuda-11.4/bin/nvcc' failed with exit status 1

类似于上述的错误,其原因是cuda11的版本与gcc10不兼容所导致的

解决方法:将gcc10降级为gcc10以下(多gcc版本共存,不卸载gcc10)
1.安装所需要的gcc版本(以gcc7为例)

sudo apt install gcc-7 g++-7

2.查看已经安装的gcc版本

ls /usr/bin/gcc*

在这里插入图片描述3.替换成你要用的版本

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100 # gcc-7替换成你要用的版本
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 50 # 添加一些可能会用的版本,方便改回来

这里的gcc版本根据你的实际情况选择。最后一个参数是优先级,值最大的选项会被选用。通过调整优先级的值,实现gcc版本切换(例如上面的gcc-7的优先级数值设置为100,高于gcc-9,那么系统会应用gcc-7)

4.查看版本验证是否成功

gcc -v

参考链接:
1.https://www.cnblogs.com/xiaohuidi/p/15471899.html
2.https://www.jianshu.com/p/a508a6e0e0b7

你可能感兴趣的:(错误,linux,运维,服务器)