河南省住房和城乡建设部网站,电子商务建设网站,商城网站程序,珠海的网站建设文章目录 前言个人环境 SSH到WSL复制文件后记 前言
最近在用我心爱的Visual Studio配合WSL2做一些Linux开发#xff0c;但是有一个问题#xff0c;就是当我#include sys/socket.h#xff0c;会提示找不到文件 我尝试了各种姿势#xff0c;包括修改CMakeSettings.… 文章目录 前言个人环境 SSH到WSL复制文件后记 前言
最近在用我心爱的Visual Studio配合WSL2做一些Linux开发但是有一个问题就是当我#include sys/socket.h会提示找不到文件 我尝试了各种姿势包括修改CMakeSettings.json下的remoteCopyAdditionalIncludeDirectories条目、SSH到WSL然后拉取远程标头都没有卵用这期间我在MSDN官方文档、各种简中博客、StackOverflow上各种搜寻均未果人都要崩溃了最后我终于找到一条不那么优雅的方式解决问题那就是直接复制。
个人环境
Visual Studio 2022 preview WSL2
SSH到WSL
这一步是为了拉取WSL上的include理论上来讲直接跳过这一步宿主机访问WSL的include目录手动复制也是可以的这里展示一下SSH的方式。首先我们在WSL上开启SSH功能
sudo apt install openssh-server
sudo vim /etc/ssh/sshd_config # 编辑加入两行
Port 22
PasswordAuthentication yes然后重启SSH服务
sudo service ssh --full-restart然后ipconfig查看wsl的IPinet就是主机名 在VS的工具 选项 跨平台里点添加SSH连接
然后在远程标头intellisense管理器里选中刚刚的连接点击下载。
复制文件
然后点浏览把x86_64-linux-gnu复制到VS的linux的include目录里路径如图对应我的路径做修改就行了 然后复制这个gnu文件夹下的所有文件复制到这个地方重复的我直接跳过 然后回到VS项目 重新扫描解决方案 然后就可以看到头文件成功intellisense了感恩
后记
这次算是把我折腾惨了全网基本只有VSCode的讨论VS的讨论寥寥无几一搜还很容易搜到VSCode。。文中的这种解决方案显然是很不优雅的理论上来讲VS是提供了远程拉取标头用于intellisense的比如改Cmakesettings之类的不知道为什么我就是用不了。。。合理怀疑是BUG如果有更好的方法欢迎给我留言。