记录vscode连接不上wsl子系统下ubuntu18.04问题解决方法

记录vscode连接不上wsl子系统下ubuntu18.04问题解决方法

报错内容

Unable to download server on client side: Error: Request downloadRequest failed unexpectedly without providing any details... Will try to download on WSL side. vscode

--2025-04-07 16:33:04-- https://update.code.visualstudio.com/commit:4437686ffebaf200fa4a6e6e67f735f3edf24ada/server-linux-legacy-x64/stable

2025-04-07 08:33:05.151\] Resolving update.code.visualstudio.com (update.code.visualstudio.com)... 13.107.246.50, 2620:1ec:bdf::50 \[2025-04-07 08:33:05.151\] Connecting to update.code.visualstudio.com (update.code.visualstudio.com)\|13.107.246.50\|:443... connected. \[2025-04-07 08:33:05.436\] HTTP request sent, awaiting response... 404 Not Found \[2025-04-07 08:33:05.436\] 2025-04-07 16:33:05 ERROR 404: Not Found. \[2025-04-07 08:33:05.436

2025-04-07 08:33:05.436\] ERROR: Failed to download https://update.code.visualstudio.com/commit:4437686ffebaf200fa4a6e6e67f735f3edf24ada/server-linux-legacy-x64/stable to /home/zl/.vscode-server/bin/4437686ffebaf200fa4a6e6e67f735f3edf24ada-1744014784.tar.gz ### 尝试第一次解决方法 1. 升级wsl 未能解决 2. 回退vscode版本 未能解决 3. 重启计算机 未能解决 4. 删除服务器目录并重新连接 ```bash rm -rf ~/.vscode-server ``` 此步解决了上面的报错,又出现新的报错,如下: /home/zl/.vscode-server/bin/4437686ffebaf200fa4a6e6e67f735f3edf24ada/node: /lib/x86_64-linux-gnu/libc.so.6: version \`GLIBC_2.28' not found (required by /home/zl/.vscode-server/bin/4437686ffebaf200fa4a6e6e67f735f3edf24ada/node) ### 尝试第二次解决方法 ```bash mkdir ~/src cd ~/src wget 'https://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz' tar xzf glibc-2.28.tar.gz mkdir glibc-2.28-build cd glibc-2.28-build ../glibc-2.28/configure --prefix=/opt/glibc-2.28 make # make sure you can write to /opt/glibc-2.28 make install ``` 其中遇到使用prefix命令修改指定编译目录出错,报错如下: ```bash ../configure --prefix=/opt/glibc-2.28/ checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for gcc... gcc checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for readelf... readelf checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether g++ can link programs... yes checking for sysdeps preconfigure fragments... aarch64 alpha arm hppa i386 m68k microblaze mips nios2 powerpc riscv s390 sh sparc x86_64 checking whether gcc compiles in -mx32 mode by default... no checking for use of fpu sysdeps directories... yes checking for -fstack-protector... yes checking for -fstack-protector-strong... yes checking for -fstack-protector-all... yes checking for assembler and linker STT_GNU_IFUNC support... yes checking for gcc attribute ifunc support... yes checking if compiler warns about alias for function with incompatible types... no checking sysdep dirs... sysdeps/unix/sysv/linux/x86_64/64 sysdeps/unix/sysv/linux/x86_64 sysdeps/unix/sysv/linux/x86 sysdeps/x86/nptl sysdeps/unix/sysv/linux/wordsize-64 sysdeps/x86_64/nptl sysdeps/unix/sysv/linux sysdeps/nptl sysdeps/pthread sysdeps/gnu sysdeps/unix/inet sysdeps/unix/sysv sysdeps/unix/x86_64 sysdeps/unix sysdeps/posix sysdeps/x86_64/64 sysdeps/x86_64/fpu/multiarch sysdeps/x86_64/fpu sysdeps/x86/fpu sysdeps/x86_64/multiarch sysdeps/x86_64 sysdeps/x86 sysdeps/ieee754/float128 sysdeps/ieee754/ldbl-96 sysdeps/ieee754/dbl-64/wordsize-64 sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/wordsize-64 sysdeps/ieee754 sysdeps/generic checking for a BSD-compatible install... /usr/bin/install -c checking whether ln -s works... yes checking whether as is GNU as... yes checking whether ld is GNU ld... yes checking for as... as checking version of as... 2.30, ok checking for ld... ld checking version of ld... 2.30, ok checking for gnumake... no checking for gmake... no checking for make... make checking version of make... 4.1, ok checking for gnumsgfmt... no checking for gmsgfmt... no checking for msgfmt... msgfmt checking version of msgfmt... 0.19.8.1, ok checking for makeinfo... no checking for sed... sed checking version of sed... 4.4, ok checking for gawk... gawk checking version of gawk... 4.1.4, ok checking for bison... no checking if gcc is sufficient to build libc... yes checking for nm... nm checking for python3... python3 configure: error: *** These critical programs are missing or too old: bison *** Check the INSTALL file for required versions. ``` 看报错日志是编译glibc-2.28时出现的bison缺失或版本过旧的问题,于是 ```bash sudo apt-get update sudo apt-get install bison ``` 安装bison后再次执行 ```bash ../configure --prefix=/opt/glibc-2.28/ ``` 成功修改编译指定编译目录。 安装"patchelf" ```bash sudo apt-get update sudo apt-get install patchelf ``` ```bash cd ~/.vscode-server/bin/4437686ffebaf200fa4a6e6e67f735f3edf24ada cp node node_bak patchelf --set-interpreter /opt/glibc-2.28/lib/ld-linux-x86-64.so.2 --set-rpath /opt/glibc-2.28/lib:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu node ``` 至此glibc-2.28安装及链接到新安装的glibc-2.28完成,vscode可以正常连接到wsl扩展中的ubuntu18.04。 ### 注意事项 **编译并覆盖安装glibc会导致系统崩溃,编译的时候一定要指定prefix,千万不能把系统中原有的lib给覆盖了。** ### 参考连接 ```bash https://github.com/microsoft/vscode/issues/210033 ```

相关推荐
old_iron3 小时前
vim定位有问题的脚本/插件的一般方法
linux·编辑器·vim
湮雨塵飛7 小时前
解决使用VsCode远程ssh连接虚拟机ubuntu需要重复输入密码
vscode·ubuntu·ssh
lorogy8 小时前
【VSCode配置】运行springboot项目和vue项目
vue.js·spring boot·vscode
Jennifer33K8 小时前
IDEA 调用 Generate 生成 Getter/Setter 快捷键
java·ide·intellij-idea
拾忆-eleven12 小时前
《当VSCode遇见DeepSeek:AI辅助编程实战手册》
ide·vscode·编辑器
xyd陈宇阳13 小时前
linux入门三:Linux 编辑器
linux·运维·编辑器
$大江东去$13 小时前
intellj idea 2024.1
java·ide·intellij-idea
红豆和绿豆13 小时前
VSCode如何安装虚拟环境
ide·vscode·编辑器
hero_th14 小时前
ssh 免密登录服务器(vscode +ssh 免密登录)
服务器·vscode·ssh
旺仔溜溜没15 小时前
在pycharm中搭建yolo11分类检测系统1--PyQt5学习(一)
ide·python·qt·学习·pycharm