环境:win10 中的 wsl2 的 Ubuntu
1. 报错 /usr/bin/ld: cannot find -lstdc++: No such file or directory
通过 sudo apt-get install libstdc++6
解决。
2. 安装完之后依旧还是报一样的错
通过 gcc -lstdc++ --verbose
检查。
输出了一大堆东西,但在末尾还是有 /usr/bin/ld: cannot find -lstdc++: No such file or directory
然后通过 sudo ldconfig
检查,报以下错误:
/sbin/ldconfig.real: Can't link /usr/lib/wsl/lib/libnvoptix_loader.so.1 to libnvoptix.so.1
/sbin/ldconfig.real: /usr/lib/wsl/lib/libcuda.so.1 is not a symbolic link
3. 处理 sudo ldconfig
报错 libcuda.so.1 is not a symbolic link
cd /usr/lib/wsl
sudo mkdir lib2
sudo ln -s lib/* lib2
更改wsl配置文件
sudo vim /etc/ld.so.conf.d/ld.wsl.conf
将 /usr/lib/wsl/lib 改为 /usr/lib/wsl/lib2
测试修改是否生效
sudo ldconfig
永久修改
sudo cat >> /etc/wsl.conf << EOF
[automount]
ldconfig = fasle
EOF
- 通过
gcc -lhdf5 --verbose
检查。
打印出来的内容应该就不再有 cannot find -lstdc++: No such file or directory
。