vscode 一直报 waiting for server log,无法远程连接到服务器
问题描述:
- 连接时一直报 waiting for server log 并最后 local server exit:15
- stderr> cat: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: No such file or directory
在网上搜到的答案基本都是下列两种:
// 要么直接下载libstdc++6
sudo apt-get update
sudo apt-get install libstdc++6
// 或者
sudo apt-get install lib32stdc++6
// 或者就是清理服务器端的.vscode-server/文件
rm -rf /home/用户自己/.vscode-server/
试过之后都无效,最终发现,问题就是出在: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: No such file or directory
解决方法:
// step1 先通过ssh或者其他软件连接上服务器,找服务器中其他的libstdc++.so.6
locate libstdc++.so.6
输出如下:
/snap/clion/249/plugins/remote-dev-server/selfcontained/lib/libstdc++.so.6
/snap/clion/250/plugins/remote-dev-server/selfcontained/lib/libstdc++.so.6
/snap/core18/2785/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core18/2785/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
/snap/core18/2785/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25-gdb.py
/snap/core18/2790/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core18/2790/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
/snap/core18/2790/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25-gdb.py
/snap/core20/1974/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core20/1974/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
/snap/core20/1974/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28-gdb.py
/snap/core20/2015/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core20/2015/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
/snap/core20/2015/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28-gdb.py
/snap/core22/817/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core22/817/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
/snap/core22/817/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30-gdb.py
/snap/core22/864/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core22/864/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
/snap/core22/864/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30-gdb.py
/snap/gnome-42-2204/120/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/gnome-42-2204/120/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
/snap/gnome-42-2204/126/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/gnome-42-2204/126/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30
/usr/lib/i386-linux-gnu/libstdc++.so.6
/usr/lib/i386-linux-gnu/libstdc++.so.6.0.25
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
/usr/local/cuda-11.4/nsight-systems-2021.2.4/host-linux-x64/libstdc++.so.6
/usr/local/cuda-11.4/nsight-systems-2021.2.4/target-linux-armv8/host-linux-armv8/libstdc++.so.6
/usr/share/gdb/auto-load/usr/lib/i386-linux-gnu/libstdc++.so.6.0.25-gdb.py
/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25-gdb.py
会发现/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25 中没有/usr/lib/x86_64-linux-gnu/libstdc++.so.6
这个时候去找/snap/core/ 下的 libstdc++.so.6
发现/snap/core18/2785/usr/lib/x86_64-linux-gnu/ 下,有同名libstdc++.so.6.0.25 此时该文件夹下的libstdc++.so.6,便是和我们同版本的libstdc++.so.6
/snap/core18/2785/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core18/2785/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
step2:使用sudo cp 将同版本的libstdc++.so.6,复制到/usr/lib/x86_64-linux-gnu/ 中
sudo cp /snap/core18/2790/usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib/x86_64-linux-gnu/libstdc++.so.6
本质就两步, 先寻找服务器本机中,同版本的libstdc++.so.6,然后复制到/usr/lib/x86_64-linux-gnu/ 中
至此,问题得解!
注意:此处必须用有同名libstdc++.so.6.0.25 的文件夹下的libstdc++.so.6,否者会出现版本不匹配问题
版权归原作者 Wieschönbistdu 所有, 如有侵权,请联系我们删除。