我在vs2017中创建了一个c ++ linux项目。 我设置了与WSL的连接(用于linux的windows子系统)。 当我构建或尝试调试时,我收到以下错误:
Current project architecture ‘x64’ is incompatible with the remote system architecture ” (‘Unknown’). Please switch the project architecture to ” in Configuration Manager
如何解决这个问题?
答案 0 :(得分:0)
原来它是一个糟糕的ssh连接的工件。 我认为它试图连接到Windows ssh服务器,它劫持连接而不是转发到WSL。
首先,我将visual studio中的连接端口(工具 - >选项 - >跨平台 - >连接管理器)从默认值22更改为222.
此外,我发现以下步骤对WSL方面有帮助(取自https://www.reddit.com/r/bashonubuntuonwindows/comments/5gh4c8/ssh_to_bash_on_wsl/):
编辑/ etc / ssh / sshd_config并更改侦听端口。对于这个演示,我使用了端口222。
将UsePrivilegeSeparation更改为“no' (因为用于Linux的Windows子系统的实现并不能提供chroot)
将PasswordAuthentication更改为'是'
在Windows端添加防火墙规则,以便SSH连接到新的侦听端口
sudo ssh-keygen -A
重启ssh服务:sudo service ssh --full-restart
在本地测试ssh连接,启用详细模式(详细模式可选):ssh localhost -p" your-port-here" -v
从另一个系统测试。 (一切都应该有效)