详解Ubuntu18.04配置VSCode+CMake的C++开发环境

详解Ubuntu18.04配置VSCode+CMake的C++开发环境

步骤1:安装VSCode和CMake

在终端中输入以下命令,安装VSCode和CMake:

sudo snap install vscode --classic
sudo apt install cmake

步骤2:安装VSCode插件

打开VSCode,使用快捷键Ctrl+Shift+X或者点击左侧菜单栏的“扩展”,搜索插件“C++”,点击“安装”。

步骤3:创建C++项目

  1. 在终端中输入以下命令,创建一个新项目文件夹:

mkdir myproject

  1. 在VSCode中打开文件夹myproject。

  2. 在VSCode的左侧菜单栏中点击“终端”,选择“新终端”,输入以下命令,创建一个CMakeLists.txt文件:

touch CMakeLists.txt

  1. 在CMakeLists.txt文件中输入以下内容:

```
cmake_minimum_required(VERSION 3.5)
project(myproject LANGUAGES CXX)

add_executable(myproject main.cpp)
```

这里的main.cpp是你的C++源文件,根据你的实际项目进行修改。

步骤4:配置VSCode编译器和调试器

  1. 在VSCode的左侧菜单栏中点击“设置”,搜索“C++配置”,找到设置项C++: Edit Configurations (UI),点击“在settings.json中编辑”按钮。

  2. 在settings.json文件中添加以下代码:

"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/myproject",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "启用打印支持",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]

这里的program选项对应上面步骤3中生成的可执行文件。

  1. 在VSCode的左侧菜单栏中点击“调试”,选择“添加配置”,选择“C++ (GDB/LLDB)”选项。

  2. 在.vscode/launch.json文件中添加以下代码:

{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/myproject",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "启用打印支持",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}

注意,这里的program选项也是对应上面步骤3中生成的可执行文件。

示例说明

示例1:使用VSCode+CMake编译并调试一个HelloWorld程序

  1. 在终端中输入以下命令,创建一个新项目文件夹:

mkdir helloworld
cd helloworld

  1. 在VSCode中打开文件夹helloworld。

  2. 在VSCode的左侧菜单栏中点击“终端”,选择“新终端”,输入以下命令,创建一个CMakeLists.txt文件:

touch CMakeLists.txt

  1. 在CMakeLists.txt文件中输入以下内容:

```
cmake_minimum_required(VERSION 3.5)
project(helloworld LANGUAGES CXX)

add_executable(helloworld main.cpp)
```

这里的main.cpp是你的C++源文件,输入以下代码:

```
#include

int main()
{
std::cout << "Hello, World!" << std::endl;
return 0;
}
```

  1. 在终端中输入以下命令,进行编译:

mkdir build
cd build
cmake ..
make

编译成功后会在build文件夹中生成可执行文件helloworld。

  1. 在左侧菜单栏中点击“调试”,并选择“添加配置”,选择“C++ (GDB/LLDB)”选项,输入以下代码:

{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/helloworld",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/build",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "启用打印支持",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}

  1. 点击调试按钮,程序会在终端窗口中显示“Hello, World!”的输出。

示例2:在VSCode中配置OpenGL开发环境

  1. 在终端中输入以下命令,安装OpenGL:

sudo apt-get install mesa-common-dev libgl1-mesa-dev

  1. 在VSCode的左侧菜单栏中点击“终端”,选择“新终端”,输入以下命令,创建一个CMakeLists.txt文件:

touch CMakeLists.txt

  1. 在CMakeLists.txt文件中输入以下内容:

```
cmake_minimum_required(VERSION 3.5)
project(opengl_demo LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -g")

find_package(OpenGL REQUIRED)
find_package(GLUT REQUIRED)

add_executable(opengl_demo main.cpp)

target_link_libraries(opengl_demo ${OPENGL_LIBRARIES} ${GLUT_LIBRARY})
```

这里的main.cpp是你的C++源文件,根据你的实际项目进行修改。

  1. 在VSCode的左侧菜单栏中点击“调试”,并选择“添加配置”,选择“C++ (GDB/LLDB)”选项,输入以下代码:

{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/opengl_demo",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "启用打印支持",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}

  1. 在源文件中编写OpenGL程序,可以参考以下示例代码:

```
#include

void display() {
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);
glVertex2f(-0.5, -0.5);
glVertex2f(-0.5, 0.5);
glVertex2f(0.5, 0.5);
glVertex2f(0.5, -0.5);
glEnd();
glFlush();
}

int main(int argc, char **argv) {
glutInit(&argc, argv);
glutCreateWindow("OpenGL Demo");
glutDisplayFunc(display);
glutMainLoop();

   return 0;

}
```

  1. 进行编译并调试。

注意,由于OpenGL依赖于X11库,所以需要使用如下命令启动VSCode:

code --disable-gpu

并且需要在VSCode的左侧菜单栏中点击“终端”→“配置终端设置”,在默认终端配置下添加如下内容:

"terminal.integrated.shellArgs.linux": ["-l"]

然后在终端中输入以下命令进行编译:

mkdir build
cd build
cmake ..
make

编译成功后会在build文件夹中生成可执行文件opengl_demo。

点击调试按钮,程序会在终端窗口中显示一个多边形的图形。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解Ubuntu18.04配置VSCode+CMake的C++开发环境 - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • C/C++编译器GCC下的常用编译命令总结

    下面我将为你讲解“C/C++编译器GCC下的常用编译命令总结”的完整攻略。 总述 GCC是一款广受欢迎的开源编译器,支持多种编程语言,并且跨平台。它是GNU编译器套件中的一个组件,可在Linux,macOS和Windows上运行。本文将介绍几个GCC编译器的常用命令。 命令详解 编译命令 1. 编译C文件 编译C文件的命令为: gcc [-g] [-O] […

    C 2023年5月23日
    00
  • vc控制台程序关闭事件时的处理方式及注意点详解

    VC控制台程序关闭事件时的处理方式及注意点详解 背景 在开发 VC 控制台程序时,我们需要考虑程序关闭事件的处理方式及注意事项。在程序关闭时,需要完成一些清理工作,避免导致内存泄漏等问题。本文将详细讲解 VC 控制台程序关闭事件的处理方式及注意点。 程序关闭事件 VC 控制台程序关闭事件主要包括以下几种: 用户手动关闭程序 系统发生错误导致的程序退出 外部信…

    C 2023年5月30日
    00
  • c++ 编程 几个有用的宏详解

    C++是一门强大的编程语言,但有些任务还是需要一些宏定义的帮助才能完成。在本文中,我们将深入讲解几个非常有用的C++宏定义,它们可以帮助您更轻松地编写程序。 常用宏定义 DEBUG宏 在Debug模式下,程序通常会输出很多调试信息,以帮助程序员快速找到问题。但在Release模式下,程序不需要输出这些调试信息,以免消耗过多的计算资源。 为了避免手动在代码中添…

    C 2023年5月23日
    00
  • C语言选择排序算法及实例代码

    C语言选择排序算法及实例代码 算法介绍 选择排序算法是一种简单的排序算法,它的基本思想是依次遍历数组元素,每次找到剩余元素中的最小值,将其放到未排序部分的最前面。它的时间复杂度为O(n²),空间复杂度为O(1),适用于各种数据规模。 选择排序算法的流程如下: 在未排序序列中找到最小元素,存放到排序序列的起始位置 再从剩余未排序元素中继续寻找最小元素,然后放到…

    C 2023年5月30日
    00
  • C语言实现合并字符串

    当我们需要将两个字符串合并为一个字符串时,可以使用C语言的字符串操作函数来实现。下面是实现合并字符串的完整攻略。 步骤一:定义存储合并后字符串的数组 首先需要定义一个数组来存储合并后的字符串。这个数组必须预先分配足够的空间来保存合并后的字符串。可以使用C语言中的malloc()函数来动态分配存储空间,或者使用静态分配的数组。 以下是利用静态数组的方式定义一个…

    C 2023年5月23日
    00
  • C++类中三大函数详解(构造、析构和拷贝)

    下面是对于“C++类中三大函数详解(构造、析构和拷贝)”的完整攻略: 构造函数 定义 构造函数是C++中用来初始化类对象的第一个函数,它的名称与类名相同,没有返回类型,且可以被重载。 特点 构造函数有以下特点: 构造函数在类实例化时自动调用。 构造函数可以被重载,可以有多个不同版本。 构造函数可以带有参数,也可以没有参数。 构造函数可以被派生类隐式调用,但只…

    C 2023年5月22日
    00
  • 项目之C++如何实现数据库连接池

    下面是关于“项目之C++如何实现数据库连接池”的完整攻略。 概述 这是一个C++项目,目的是为了实现一个数据库连接池。它可以提供多个连接数据库的线程,而且每个线程都可以从连接池中获取数据库连接,使用完之后再释放回去,以便其他线程使用。 实现步骤 第一步:建立连接池类 首先,我们需要建立一个连接池类,这个类应该包含以下几个基本方法: init_connecti…

    C 2023年5月22日
    00
  • PowerShell查看本机文件关联程序和默认打开程序的方法

    当我们在Windows系统中单击一个文件时,系统会提示我们使用哪个程序来打开这个文件。在Windows环境中,我们可以使用PowerShell来查看本机文件关联的程序和默认打开程序,下面是具体步骤: 步骤一:运行PowerShell 按下win+r,调出运行窗口,在运行窗口中输入powershell, 然后单击“确定”即可打开PowerShell。 步骤二:…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部