由於很多unix特有的函數無法在Windows上使用,而Vim又用的不太順手,突然想到最初用vs的時候有一個基於Linux的C++開發。在網上找了很多教程后,發現還是官方的教程比較詳細,不過其中也有一些踩過的坑。
官方文檔中有的內容就不重復了。vs安裝相關插件,創建項目之后,依次選擇“工具”->“選項”->“跨平台”->“連接管理器”,點擊添加新建連接,如果你有遠程主機\虛擬機的話,輸入IP地址、端口號(默認22)、用戶名、選擇驗證方式密碼或密鑰。這里,如果你輸入的是正確的話,會彈出一個正在更新文件的窗口,可能要很長時間而且窗口還沒有進度條,當時我還以為連接失敗了,耐心等待一下就可以啦。
連接成功后vs的調試按鈕也會變成你的主機號加其體系結構
下面我們就可以編寫程序啦
下面是一個需要用到unix系統調用的小程序
#include<iostream>
#include<unistd.h>
#include<cstdlib>
using namespace std;
int main(int argc, char* argv[])
{
auto i = fork();
if (i == 0)
{
cout << "pid = "<<getpid() << " and retVal of fork = " << i << endl;
exit(0);
}
cout << "pid = " << getpid()<<" and retVal of fork = "<<i<< endl;
return 0;
}
由於我以往用VS都是直接ctrl+f5不調試,這回報了一堆莫名其妙的錯誤而且控制台沒有任何輸出,后來我試了一下直接f5,仍然有哪些奇怪的錯誤,但是控制台有正確的輸出了。
關於如何呼出Linux控制台窗口
菜單欄 -> “調試” -> “Linux控制台”
例程的結果如下:
下面我們到Linux主機上去看看有什么變化,在根目錄中多出了一個名為projects的文件夾
使用tree查看一下其組織結構,后綴為.out即為我們最終得到的可執行文件,運行一下,其結果與在VS中調試得到的結果類似(進程pid的隨機性)
使用VS的Linux開發終於完成了第一步,繼續努力!