vscode c++ cmake工程示例
发布日期:2022-03-11 10:18:56
浏览次数:52
分类:技术文章
本文共 2273 字,大约阅读时间需要 7 分钟。
工程目录:
源码文件:
#include#include void print(){ for (int i = 0; i < 10; i++) { std::cout << "Thread 1: " << i << std::endl; }}int main(){ std::thread print_thread(print); print_thread.join(); return 0;}
CmakeList.txt
cmake_minimum_required(VERSION 3.5)project(thread_demo)option(BUILD_DEBUG "Build Debug" ON)set(CMAKE_C_COMPILER "gcc")set(CMAKE_CXX_COMPILER "g++")if(BUILD_DEBUG) message("Build Debug Mode") set(CMAKE_BUILD_TYPE Debug) set(CMAKE_CXX_FLAGS "-fPIC -std=c++11 -O0 -g ${CMAKE_CXX_FLAGS}")else() message("Build Release Mode") set(CMAKE_BUILD_TYPE Release) set(CMAKE_CXX_FLAGS "-fPIC -std=c++11 -O3 ${CMAKE_CXX_FLAGS}")endif(BUILD_DEBUG)set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)add_executable(main main.cpp)target_link_libraries(main -lpthread)
tasks.json:
{ "version": "2.0.0", "options": { "cwd": "${workspaceFolder}/build" }, "tasks": [ { "label": "cmake", "type": "shell", "command": "cmake", "args": [ ".." ], }, { "label": "make", "type": "shell", "group": { "kind": "build", "isDefault": true }, "command": "make", "args": [ ], }, { "label": "Build", "dependsOn":[ "cmake", "make" ] } ]}
launch.json:
{ "version": "0.2.0", "configurations": [ { "name": "g++ - 生成和调试活动文件", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/bin/main", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "为 gdb 启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "Build", "miDebuggerPath": "/usr/bin/gdb" } ]}
代码调试:
转载地址:https://blog.csdn.net/weicao1990/article/details/109702276 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年03月03日 01时30分29秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
盾神与砝码称重java_[蓝桥杯][算法提高VIP]盾神与砝码称重
2019-04-21
java输出狗的各类信息_第九章Java输入输出操作
2019-04-21
java notify怎么用_java 如何使用notify()
2019-04-21
java metrics 怎么样,Java metrics
2019-04-21
普朗克公式matlab,用MATLAB实现普朗克函数积分的快捷计算.pdf
2019-04-21
swoolec+%3c?php,PHP+Swoole并发编程的魅力
2019-04-21
php 404配置,phpcms如何配置404
2019-04-21
matlab wash矩阵产生,洗衣机净衣效能与衣损程度的关系分析
2019-04-21
python多线程实现kmeans,3种方式实现python多线程并发处理
2019-04-21
matlab 变量不存在,matlab程序运行时提示变量未定义
2019-04-21
php编码函数 base58,1. Base58可逆加密
2019-04-21
oracle10g dblink优化,Oracle10g通过dblink访问数据异常
2019-04-21
linux安装时的iso文件,直接用ISO文件在linux上安装新系统
2019-04-21
linux修改文件权限为所有人都可以访问,Linux 笔记分享八:文件权限的设定
2019-04-21
linux中卸载ambri-servle,Kerberos 命令使用
2019-04-21