vscode和cmake編譯多個(gè)C++文件的實(shí)現(xiàn)方法
目的是利用vscode及相關(guān)插件編譯多個(gè)C++文件。
我已經(jīng)裝好cmake和mingw并且將它們的路徑添加到系統(tǒng)變量path中了。
vscode裝上如下幾個(gè)插件:
點(diǎn)擊vscode左上角 文件->首選項(xiàng)->設(shè)置,彈出如下窗口:
cmake tools里頭有一項(xiàng)cmake.preferredGenerators要根據(jù)編譯器修改成對應(yīng)的值,mingw對應(yīng)的是MinGW Makefiles
下面一項(xiàng)cmake要配置cmake的安裝路徑,我的是C:\\Program Files\\CMake\\bin\\cmake
隨便新建個(gè)文件夾新建個(gè)CMakeLists.txt,先確認(rèn)一下不編譯文件時(shí)vscode和cmake能不能正常工作,
CMakeLists.txt內(nèi)容如下:
cmake_minimum_required(VERSION 2.6) # avoid some cmake warnings IF(POLICY CMP0026) CMAKE_POLICY(SET CMP0026 OLD) ENDIF() SET(test_message "test vscode and cmake") MESSAGE (STATUS "test_message: ${test_message}")
這個(gè)時(shí)候插件會(huì)自動(dòng)生成一個(gè)build文件夾
然后點(diǎn)擊左下角的,彈出一個(gè)
隨便點(diǎn)一個(gè)debug,會(huì)彈出一堆和執(zhí)行 cmake . 一樣的信息來,也能成功打印test_message。
說明vscode和cmake可以正常工作。再點(diǎn)一下左下角的build,就make了。得到提示信息
main.cpp
#include<iostream> #include"mathfunc.h" using namespace std; int main(){ double a,c; cout << "enter a and b: " << endl; cin >> a >> c; cout << "a*b*b = " << scjfunc(a,c) << endl; system("pause"); return 0; }
mathfunc.cpp
#include"mathfunc.h" double scjfunc(double a, double b) { return a*b*b; }
mathfunc.h
#ifndef MATHFUNC_H #define MATHFUNC_H double scjfunc(double a, double b); #endif
CMakeLists.txt
cmake_minimum_required(VERSION 2.8) project(demo) aux_source_directory(. DIR_SRCS) add_executable(demo ${DIR_SRCS})
和沒添加源文件時(shí)的操作一樣就可以生成exe了。不會(huì)自動(dòng)運(yùn)行exe。
要debug的話,在CMake Tools configuration中找到cmake.debugConfig,設(shè)置成:
"cmake.debugConfig": { "miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe", "externalConsole": true, "stopAtEntry": false }
然后點(diǎn)擊vscode下面的可以調(diào)試,畫面如下:
目的達(dá)成。
到此這篇關(guān)于vscode, cmake編譯多個(gè)C++文件的實(shí)現(xiàn)方法的文章就介紹到這了,更多相關(guān)vscode, cmake編譯多個(gè)C++內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- vscode 配置 C/C++ 編譯環(huán)境的詳細(xì)圖文教程
- VSCode搭建C/C++編譯環(huán)境的詳細(xì)教程
- vscode 配置 C/C++編譯環(huán)境(完整教程)
- VSCode C++多文件編譯的簡單使用方法
- Visual Studio Code (VSCode) 配置搭建 C/C++ 開發(fā)編譯環(huán)境的流程
- vscode?采用C++17版本進(jìn)行編譯的實(shí)現(xiàn)
- 2022最新使用VSCode編譯運(yùn)行C++的過程及會(huì)遇到的兩個(gè)問題
- VSCode C/C++多文件編譯配置小結(jié)
- vscode+wsl運(yùn)行編譯c++的實(shí)現(xiàn)
相關(guān)文章
C++報(bào)錯(cuò)`Null Pointer Dereference`的解決方法
在軟件開發(fā)中,Null Pointer Dereference 是一種常見的錯(cuò)誤,它發(fā)生在程序試圖訪問或操作一個(gè)空指針指向的內(nèi)存位置時(shí),這種情況通常會(huì)導(dǎo)致程序崩潰,給 debug 工作帶來很大困擾,今天,我們將探討如何解決 Null Pointer Dereference 報(bào)錯(cuò),需要的朋友可以參考下2024-07-07C語言數(shù)據(jù)結(jié)構(gòu)單鏈表接口函數(shù)全面講解教程
這篇文章主要為大家介紹了C語言數(shù)據(jù)結(jié)構(gòu)單鏈表所有接口函數(shù)的全面講解教程,有需要朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2021-10-10C語言數(shù)據(jù)結(jié)構(gòu)系列篇二叉樹的遍歷
本章將會(huì)詳細(xì)講解二叉樹遍歷的四種方式,分別為前序遍歷、中序遍歷、后續(xù)遍歷和層序遍歷。在學(xué)習(xí)遍歷之前,會(huì)先帶大家回顧一下二叉樹的基本概念2022-02-02