使用Visual Studio 2017作為Linux C++開發(fā)工具
Visual Studio 2017
微軟的宇宙第一IDE Visual Studio 2017正式版出來了,地址是:https://www.visualstudio.com/vs/whatsnew/
VS2017亮點(diǎn)很多,包括模塊化安裝、啟動速度加快(第一次啟動加快50%以上)、github插件、啟動頁完善、增強(qiáng)代碼提示功能,等等,更多參考:https://www.visualstudio.com/en-us/news/releasenotes/vs2017-relnotes。
Visual Studio 2017 Support for Linux Development
VS2017可以編輯、編譯、調(diào)試linux上的c++、python、node.js程序(詳細(xì))。
甚至可以編譯調(diào)試.NET程序,支持的Linux平臺包括:
CentOS 7.1 and Oracle Linux 7.1
Debian 8
Fedora 23
Linux Mint 17
openSUSE 13.2
Red Hat Enterprise Linux 7.2
Ubuntu 14.04 and 16.04
博主主要是c++作為開發(fā)語言,并且絕大部分代碼都有跨平臺的需求。博主一般步驟如下:
在windows機(jī)器上使用visual studio開發(fā)大部分算法功能模塊,并且調(diào)試優(yōu)化完畢;在涉及到IO或者網(wǎng)絡(luò)相關(guān)的部分,需要port到linux平臺,痛苦的用vim編寫代碼,gcc編譯,gdb調(diào)試。
重點(diǎn)關(guān)注其中Visual Studio在C++跨平臺方面的亮點(diǎn),即Visual C++ for Linux,有了它,就能用最先進(jìn)的IDE進(jìn)行跨平臺的開發(fā)了,好開心!
Visual C++ for Linux
VC++ 2017支持在編寫、調(diào)試Linux下的C++程序([詳細(xì)(https://blogs.msdn.microsoft.com/vcblog/2016/03/30/visual-c-for-linux-development/))。
創(chuàng)建跨平臺Linux C++程序,如圖:
實際使用效果如下圖,可以看到,能夠在VS下面編譯Linux代碼,甚至包括linux特有的頭文件。除了代碼補(bǔ)全很爽之外,還有代碼著色,可視化調(diào)試等各種優(yōu)點(diǎn)。
使用步驟
1.目標(biāo)linux機(jī)器上安裝好編譯環(huán)境與調(diào)試環(huán)境,如在ubuntu下,安裝好openssh-server/g++/gdb/gdbserver等。
sudo apt-get install openssh-server g++ gdb gdbserver
2.本機(jī)安裝好visual studio 2017,需要選擇安裝Cross Platform Linux C++環(huán)境。
3.打開Visual Studio,新建工程,選擇Cross Platform/Linux/Console Application。
4.在第一次build之前會要求ssh連接到目標(biāo)linux機(jī)器,填上用戶名密碼連接目標(biāo)機(jī)器。如果需要更換目標(biāo)機(jī)器地址,在Tools/Options/Cross Platform下進(jìn)行管理。
5.設(shè)置好一系列選項(黑體部分),與普通的Win32程序的設(shè)置基本一致。需要注意如下2點(diǎn):
vs不會自動把a(bǔ)ddtional include中的頭文件復(fù)制到本地來做代碼補(bǔ)全的提示,需要手動將linux下面的/usr/include、/usr/local/include等目錄復(fù)制到vs的linux header path(如:C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\Linux\include\usr)
頭文件包含目錄和庫文件包含目錄均為linux下的絕對路徑。
6.編譯時vs會將代碼復(fù)制到目標(biāo)機(jī)器的~/projects/[project-name]目錄下,二進(jìn)制文件在其目錄的bin目錄下。如下圖,Linux環(huán)境下可以看到,已經(jīng)有代碼了。
實際開發(fā)
在初步使用體驗中,感覺這個vs for linux還不是特別成熟,有不少問題,包括:復(fù)制文件速度過慢、無法多線程編譯、編譯輸出信息丟失(不夠友好)、無法操作跳板機(jī)等。
不過該工具作為編碼的輔助工具,仍然非常具有價值,結(jié)合了vs強(qiáng)大的的代碼編輯與調(diào)試功能和linux機(jī)器的天然服務(wù)器特性。未來可期!
更多文章,查看主頁。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- visual studio 2019安裝配置可編寫c/c++語言的IDE環(huán)境
- 如何使用visual studio2019創(chuàng)建簡單的MFC窗口(使用C++)
- Visual Studio Code (vscode) 配置 C / C++ 環(huán)境的流程
- Visual Studio Code配置C、C++環(huán)境并編寫運(yùn)行的方法
- Visual Studio(VS2017)配置C/C++ PostgreSQL9.6.3開發(fā)環(huán)境
- 在Visual Studio上構(gòu)建C++的GUI框架wxWidgets的開發(fā)環(huán)境
- Visual Studio C++指針靠前靠后的問題全面解析
相關(guān)文章
asp.net 將一個圖片以二進(jìn)制值的形式存入Xml文件中的實例代碼
這篇文章介紹了將一個圖片以二進(jìn)制值的形式存入Xml文件中的實例代碼,有需要的朋友可以參考一下2013-07-07ASP.NET?Core?使用SignalR推送服務(wù)器日志的過程記錄
這篇文章主要介紹了ASP.NET?Core?使用SignalR推送服務(wù)器日志的相關(guān)知識,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2024-01-01讓GridView只顯示特定用戶的數(shù)據(jù)的方法
GridView 只顯示特定用戶的數(shù)據(jù)2008-10-10Elasticsearch.Net使用教程 MVC4圖書管理系統(tǒng)(2)
這篇文章主要介紹了Elasticsearch.Net使用教程教會大家利用MVC4制作圖書管理系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-11-11一個簡單的asp.net 單點(diǎn)登錄實現(xiàn)
上次做了學(xué)校的火車訂票系統(tǒng),那邊要求要從學(xué)生信息平臺直接點(diǎn)過來就是登錄狀態(tài),不用在重新登錄。學(xué)生信息平臺原來是用asp做的,而火車訂票系統(tǒng)是asp.net做的。兩個網(wǎng)站的學(xué)生信息調(diào)用的是同一個數(shù)據(jù)庫。2009-11-11