使用VS2017進行Linux開發問題匯總
①、重新安裝虛擬機開發環境後,生成項目,報錯如下:
1>------ 已啟動生成: 項目: asf_plugin_gd_trans, 配置: Debug x64 ------
1>Validating architecture
1>Validating sources
1>Copying sources remotely to ‘192.168.4.190‘
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Application Type\Linux\1.0\Linux.Makefile.Targets(114,5): error : Could not create directories, mkdir exit code
1>已完成生成項目"asf_plugin_gd_trans.vcxproj"的操作 - 失敗。
========== 生成: 成功 0 個,失敗 1 個,最新 0 個,跳過 0 個 ==========
解決:從報錯信息來看mkdir失敗了,並且提示是在:Linux.Makefile.Targets(114,5),即Linux.Makefile.Targets文件第114行的命令,從下數過去第五個命令;
這裏對應的值到底存儲在哪裏呢?
經過仔細分析,發現在項目生成時,如下目錄多出一個這樣的文件:
obj\x64\Debug\1202873690.RemoteProjectDirFile.tlog,
文件內容如下:
其中用‘ | ‘分割了兩個目錄:$RXHOME/src/gdtrans 和 /src/gdtrans
經過仔細對比,發現這兩個是界面上這兩個配置項:
這個$RXHOME是linux下面的環境變量,這裏肯定為空,所以這裏配置為具體的絕對路徑:
/home/fm/server
再次生成項目,能夠將windows上本地文件上傳到linux上指定目錄進行編譯;
題外話:
VS2017能夠支持linux進行遠程開發、編譯、調試,都是依賴
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Application Type\Linux\1.0\Linux.Makefile.Targets
這個文件,將VS下面的每一步操作對應到一個Target節點上,Target裏面會配置各種依賴和執行條件;
②、本地文件改動後,不能成功上傳到linux服務器上進行編譯?
解決:切換到.\obj\x64\Debug目錄下面,刪除*.tlog文件,然後重新生成即可;
使用VS2017進行Linux開發問題匯總