0

我在vs2017中創建了一個C++ linux項目。 我建立了一個連接到WSL(windows子系統的Linux)。 當我建立或嘗試調試,我得到以下錯誤:在WSL VS2017中調試C++ - 未知的arch錯誤

Current project architecture ‘x64’ is incompatible with the remote system architecture 」 (‘Unknown’). Please switch the project architecture to 」 in Configuration Manager

這又如何解決呢?

回答

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'(因爲Windows子系統用於Linux的實現不提供的chroot)

  • 變化的PasswordAuthentication爲 'yes'

  • 在Windows端爲SSH添加防火牆規則,以你的新的監聽端口

  • 須藤SSH-凱基-A

  • [R estart SSH服務:sudo的服務SSH --full重啓

  • 測試SSH與詳細模式在本地連接啓用(詳細模式可選):本地主機的ssh -p 「您的端口,在這裏」 -v

  • 從另一個系統測試。 (所有應該工作)

+0

您應該使用端口2222作爲端口222在1024和保留。事實上,在[保留端口列表](https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers)中,沒有應用程序使用它,但這是一個很好的做法。 – Shirkam