03-vscode编译调试多个源文件程序

vscode+mingw搭建C/C++环境系列

01.vscode+mingw搭建编译调试环境

02-vscode编译调试单个源文件程序

03-vscode编译调试多个源文件程序

04-vscode搭建cmake的编译环境


一、简述

前面文章中已经简单说明了,如何使用vscode编译调试单个源文件程序,本文继续上一个章节说明下如何使用vscode编译调试多个源文件程序

二、vscode编译调试多个源文件程序

1.创建多个源文件程序

在原有代码的基础上(main.cpp),新建文件夹add,然后在该文件夹下面添加文件add.h和add.cpp,将原本add函数的声明和实现分别放到add.h和add.cpp中,文件结构如下:
在这里插入图片描述
add.h

int add(const int &var1,const int& var2);

add.cpp

#include "add.h"
int add(const int &var1,const int& var2)
{
    return var1+var2;
}

main.cpp

#include <iostream>
#include <sstream>
#include "add/add.h"

int main(int argc,char** argv)
{
   std::cout<<"VsCode Test"<<std::endl; 
   int var1=10,var2=20;
   std::ostringstream ss;
   ss<<"var1+var2="<<add(var1,var2)<<"\n";
   std::cout<<ss.str().c_str();
   return 0;
}

2.调试运行多文件程序

Run Code

将鼠标的焦点放到要编译运行的源代码文件上,在窗口的右上角区域有个右三角的图标,下拉选择Run Code,直接编译运行程序。在多文件下会提示如下报错说明。
![在这里插入图片描述](https://img-blog.csdnimg.cn/8c93693e8ded47caba198da430f45b98.png
在这里插入图片描述
错误说明:vscode使用g++编译的时候默认只编译了单个文件,所以没有将add.cpp进行编译,导致程序在链接的过程中找不到add(const int& ,const int&)函数的符号。

a.settings.json文件说明

settings.json是VS Code众多配置文件中的一个,可以对VS Code进行页面风格、代码格式、字体颜色大小等 的编辑设置,例如:前面文章中提到到自动保存、字体、文件编码等。
vscode设置界面分用户区和工作区
用户区:会应用于该用户打开的所有的工程,配置一些基础、常用、共用的配置。
工作区:仅适用于vscdoe打开的当前目录。

b.修改settings.json文件编译参数

本文将编译参数的设置都放在了工作区,
文件–>首选项–>设置->搜索code run–>选择Code-runner:Executor Map设置编译参数,点击编辑,会生成settings.json。
在这里插入图片描述
在这里插入图片描述
Code-runner:Executor Map中的下面展示了C和C++的编译参数,由多个组合命令完成了整个编译运行的过程,修改cpp的编译选项,增加add/add.cpp文件的编译。如下图所示:
在这里插入图片描述
以cpp的编译选项进行简单说明:

  • cd $dir :先进入到工作区目录
  • g++ $fileName -Iadd add/add.cpp -o $fileNameWithoutExt :g++的编译选项,-I指定头文件目录add,增加编译add/add.cpp文件,-o 输出目标文件
  • $dir $fileNameWithoutExt:运行当前应用程序
{
    "code-runner.executorMap": {
        "c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
        "cpp": "cd $dir && g++ $fileName -Iadd add/add.cpp -o $fileNameWithoutExt && $dir$fileNameWithoutExt", 
    }
}

再次点击Run Code,代码编译运行成功,

3.调试C/C++文件

直接点击调试C/C++文件的程序,vscode会直接报错,
在这里插入图片描述
在多个源文件程序中,如果需要调试,就需要修改tasks.json文件。

a.修改tasks.json文件

前面在运行多个源文件程序的时候,我们修改了settings.json文件,tasks.json文件是vscode调试时候依赖的文件,同样也需要修改编译选项如下: 在编译参数args里面添加编译文件的选项,如下所示:
在这里插入图片描述
修改完成后在点击调试C/C++文件,即可完成调试。


  • 5
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
要在VSCode中进行GEC6818的交叉编译,你可以按照以下步骤进行操作: 1. 安装C/C++插件:在VSCode中安装C/C++插件,它提供了一些工具和功能,用于编写和调试C和C++代码。 2. 安装ARM交叉编译工具链:GEC6818是基于ARM架构的开发板,你需要安装适用于ARM的交叉编译工具链。你可以从FriendlyARM官方网站上下载并安装ARM交叉编译工具链。 3. 配置VSCode使用交叉编译工具链:在VSCode的设置中,找到"C/C++"选项,然后找到"Edit in settings.json"链接。在打开的settings.json文件中,添加以下配置: ```json { "C_Cpp.default.configurationProvider": "ms-vscode.cmake-tools", "C_Cpp.default.compilerPath": "path/to/your/cross-compiler" } ``` 确保将"path/to/your/cross-compiler"替换为你的交叉编译器的路径。 4. 在项目中创建一个CMakeLists.txt文件:在你的项目文件夹中创建一个CMakeLists.txt文件,用于描述你的项目和编译选项。这个文件将告诉CMake如何构建你的项目,并使用交叉编译工具链。以下是一个示例CMakeLists.txt文件: ```cmake cmake_minimum_required(VERSION 3.10) project(YourProjectName) set(CMAKE_SYSTEM_NAME Linux) set(CMAKE_SYSTEM_PROCESSOR arm) set(CMAKE_C_COMPILER "path/to/your/cross-compiler") # 添加你的源文件 add_executable(your_executable your_source_files.cpp) # 添加其他的编译选项,如链接库等 ``` 确保将"path/to/your/cross-compiler"替换为你的交叉编译器的路径,并将"your_executable"和"your_source_files.cpp"替换为你的项目名称和源文件。 5. 在VSCode中打开你的项目文件夹,然后选择CMake工具:在底部的状态栏中,你应该能够看到一个"CMake: ..."按钮。点击它,然后选择"CMake: Configure"选项来配置CMake项目。完成后,选择"CMake: Build"选项来构建你的项目。 请注意,具体的步骤可能因你使用的工具链和项目结构而有所不同。请参考相关文档和资源以获取更多详细信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值