Visual Studio Code系列--CMake Tools使用说明

news/2024/7/16 10:15:59 标签: vscode, ide, 编辑器

一、目的

        在linux系统上开发程序,一般都是使用vim+gcc+gdb进行的;但是为了开发效率我们也会使用Visual Studio Code进行开发,毕竟有界面的开发调试还是更加友好一些。

        老牌程序员肯定都知道make构建工具,但是其晦涩的语法还是难住不少初级开发者的。那么有没有一种更加方便的构建方式呢?

        答案是肯定的,我们可以使用CMake来进行构建,在Visual Studio Code上再配合CMake Tools工具真是如虎添翼。

        
​​​​​​​

 

二、实战

        参考资料

        Get started with CMake Tools on LinuxGet started with the CMake Tools Visual Studio Code extension on Linuxhttps://code.visualstudio.com/docs/cpp/CMake-linux#_select-a-kit

        1、安装Visual Studio Code
sudo apt updatesudo apt install software-properties-common apt-transport-https wget
sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
sudo apt install code
        2、确认开发环境
gcc -v

                 

        如果没有安装使用下面的命令安装 

sudo apt-get install gcc
sudo apt-get install build-essential gdb cmake

        确认cmake版本(尽量高于3.12.0)

cmake --version

 

        3、创建工程目录并安装visual studio code插件(C++ extension for VS Code、CMake Tools extension for VS Code)

        在terminal下输入后打开visual studio code        

mkdir -p ~/workspace/work/test/cmakeQuickStart
cd ~/workspace/work/test/cmakeQuickStart
code .

         

        4、创建cmake hello world工程 

        通过组合按键(Ctrl+Shift+P)打开命令面板,然后输入cmake quick后回车

 

        输入工程名称helloWorld后回车

        选择编程语言

 

        选择编程类型(库或者可执行程序)

 

         

        再次打开命令面板输入cmake select a kit

 

        选择本地编译器 

        修改main.c文件

#include <stdio.h>

int main(int argc, char** argv){
    printf("Hello, from helloWorld!\n");
}

 

        5、编译 

        再次打开命令面板,输入cmake build

 

        编译完成后输出如下

 

        给程序添加断点(直接在代码行开头点击一下就会出现红点)

        6、调试

        再次打开命令面板,输入cmake debug

        进入调试窗口

 

         

        以上就是cmake tool的基本内容。 

        


http://www.niftyadmin.cn/n/1655044.html

相关文章

notnull注解_Spring MVC:为啥GetMapping注解会无效

分享自己在Java方面的所思所想&#xff0c;希望你看完之后能有更多更深入的了解本人微信公众号(jwfy的学习分享)&#xff0c;欢迎关注&#xff5e;问题表象学习spring的时候&#xff0c;学习GetMapping注解&#xff0c;了解到他是在spring4.3加的新注解&#xff0c;整合了Reque…

DB2常用函數總結

最近用DB2&#xff0c;数据库之间的差异还是很大的&#xff0c;好多函数都不一样 1.去空格 *DB2中&#xff1a;Ltrim()是去左边空格,rtrim()是去右边空格。*informix中&#xff1a;trim&#xff08;&#xff09;就是去空格。用法&#xff1a;例&#xff1a;string a" abc…

php文件缓存数据

最近在做微信的摇一摇跑马活动&#xff0c;实现原理是用户摇动手机&#xff0c;通过ajax往数据库写入数据&#xff08;小马跑的步数&#xff09;&#xff0c;然后PC端用过ajax每一秒钟从数据库中调取一次数据&#xff08;小马跑的步数&#xff09;&#xff0c;然后显示在PC屏幕…

c++读取utf8文件_永远不要在 MySQL 中使用“utf8”

点击蓝色“程序猿DD”关注我哟加个“星标”&#xff0c;不忘签到哦来源&#xff1a;http://t.cn/EIhnOJT最近我遇到了一个 bug&#xff0c;我试着通过 Rails 在以“utf8”编码的 MariaDB 中保存一个 UTF-8 字符串&#xff0c;然后出现了一个离奇的错误&#xff1a;Incorrect st…

mysql将结果集并排显示_从原理上理解MySQL的优化建议

概述自从学习 MySQL 以来&#xff0c;我们一直听到或者看到很多优化建议&#xff0c;比如说不要用 select * 查询&#xff0c;用什么字段就查什么字段&#xff1b;建议用自增主键来作为表的主键&#xff0c;等等。这些建议听得很多感觉都成了 MySQL 开发的常识了&#xff0c;但…

Android multipartentity的用法

最近写一个程序&#xff0c;android手机端上传多个图片到asp.net服务器端&#xff0c;使用httpclient&#xff0c;在网上查到了使用multipartentity。上传测试时总是出现(500)Internal Server Error&#xff0c;最后查出原来是文件大小超出了服务器限制&#xff0c;在项目的web…

Visual Studio 打开解决方案后 弹出框显示 正在打开文件... 迟迟没反应 的解决方法...

Visual Studio 打开解决方案后 弹出框显示 "正在打开文件..."&#xff0c;任务管理器的devenv进程又很正常&#xff0c;不会显示"未响应"。 而IDE的左下角有个 "正在等待分析完成..." 提示。 刚开始&#xff0c;我以为是VS插件问题&#xff0c;因…

mybatisplus代码生成器_Java中springboot集成之MybatisPlus技术清单

2020年给自己定制了学习计划&#xff0c;现在按照计划慢慢去学习&#xff0c;由于平时要上班&#xff0c;所以大部分都是利用晚上下班和周末时间来学习&#xff0c;并写成文章&#xff0c;一来可以使自己加强学习时的探索&#xff0c;也是为了以后能翻过来看看&#xff0c;二来…