VSCode同时编译多个C文件

这篇具有很好参考价值的文章主要介绍了VSCode同时编译多个C文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.环境说明
1.系统:Ubuntu 22.04.2 LTS
2.Visual Studio Code: 1.80.1
二.问题描述
今天使用VSCode编译《Programming Abstractions In C》书中的gymjudge.c代码时遇到错误,错误提示为:

(base) codists@pc:~/projects/Programming-Abstractions-In-C$ cd "/home/codists/projects/Programming-Abstractions-In-C/chapter2/" && gcc gymjudge.c -o gymjudge -lm && "/home/codists/projects/Programming-Abstractions-In-C/chapter2/"gymjudge
/usr/bin/ld: /tmp/cc5uqaX4.o: in function `GetScore':
gymjudge.c:(.text+0x81): undefined reference to `GetReal'
/usr/bin/ld: /tmp/cc5uqaX4.o: in function `main':
gymjudge.c:(.text+0x173): undefined reference to `GetInteger'
collect2: error: ld returned 1 exit status

VSCode同时编译多个C文件,VisualStudioCode,vscode

三.问题分析
因为gymjudge.c文件里面引入了”simpio.c”文件里面“GetReal”、“GetReal”方法,但是我们可以看到错误提示中的“gcc gymjudge.c -o gymjudge -lm”只编译了gymjudge.c一个文件,所以找不到“GetReal”、“GetReal”方法,应该将”simpio.c”一起进行编译。
在命令行操作我们可以将两个c文件写到一起如“gcc gymjudge.c simpio.c -o gymjudge -lm”,但是现在是在VSCode里面操作,那么在哪里设置这个命令呢?在setting.json文件中设置。
四.解决方法
(1)打开设置(快捷键:Ctrl + ,)
VSCode同时编译多个C文件,VisualStudioCode,vscode

(2)Open Settings(JSON)
VSCode同时编译多个C文件,VisualStudioCode,vscode

(3)修改配置
将:

"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt -lm && $dir$fileNameWithoutExt",

修改为:

 "c": "cd $dir && gcc *.c -o $fileNameWithoutExt -lm && $dir$fileNameWithoutExt",

VSCode同时编译多个C文件,VisualStudioCode,vscode

修改完之后保存,最后重启VSCode即可。
五.总结
通过解决该问题可以得到两个收获:(1)掌握了如何通过多个c源文件编译出一个可执行文件。(2)了解了VSCode可视化操作背后所执行的命令,在何处配置这些命令以及如何配置这些命令。

欢迎搜索及关注:编程人文章来源地址https://www.toymoban.com/news/detail-613349.html

到了这里,关于VSCode同时编译多个C文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 设置VsCode 将打开的多个文件分行(栏)排列,实现全部显示

    目录 1. 前言 2. 设置VsCode 多文件分行(栏)排列显示         主流编程IDE几乎都有排列切换选择所要查看的文件功能,如下为Visual Studio 2022的该功能界面: 图 1   图 2 当在Visual Studio 2022打开很多文件时,可以按照图1、图2所示找到自己想要的文件,这在编程开发中是很常见的行

    2024年02月13日
    浏览(38)
  • ROS学习笔记(四)---使用 VScode 启动launch文件运行多个节点

    ROS学习笔记文章目录 01. ROS学习笔记(一)—Linux安装VScode 02. ROS学习笔记(二)—使用 VScode 开发 ROS 的Python程序(简例) 03. ROS学习笔记(三)—好用的终端Terminator 一、什么是launch文件 虽然说Terminator终端是能够比较方便直观的看运行的节点,但有时候节点一多,输入的rosrun指令也会

    2024年02月09日
    浏览(40)
  • 【VSCode】Windows环境下,VSCode 搭建 cmake 编译环境(通过配置文件配置)

    除了之前的使用 VSCode 插件来编译工程外,我们也可以使用配置文件来编译cmake工程,主要依赖 launch.json 和 tasks.json 文件。 目录 一、下载编译器 1、下载 Windows GCC 2、选择编译器路径 二、配置 debug 环境 1、配置 lauch.json 文件 2、配置 tasks.json 文件 三、编译工程 1、测试工程结

    2024年02月03日
    浏览(47)
  • VSCode编译运行 C/C++ 文件

    1、环境配置 MinGW安装 下载地址:https://sourceforge.net/projects/mingw/,点击下载,文件是一个安装引导文件。 (此方法下载很慢,没有科技建议找其他方法下载安装,然后再回来(ง •_•)ง) 。 下载完成后,双击运行。 安装过程 可选择安装路径,不要带空格。 点击继续,开始

    2024年02月09日
    浏览(30)
  • 三步 让你的 vscode 自动编译ts文件

    1:环境安装 tsc  作用:负责将 ts  代码 转为 浏览器 和 nodejs 识别的  js 代码。 /全局安装 npm install -g typescript // 检查是否安装成功 tsc -v  2:自动编译 运行 tsc --init,创建 tsconfig.json 文件; 修改 tsconfig.json 文件,设置编译后的 js 文件夹。快速查找 outDir,输出路径修改为:

    2024年02月02日
    浏览(36)
  • vscode使用g++编译.c文件或.cpp文件

        vscode是一个跨平台、轻量级、插件非常丰厚的IDE,这里介绍在vscode里使用g++来编译.cpp文件。g++也叫GCC, 在Window中,是使用MinGW方式实现g++的,它分为32位和64位2个版本,其中,MinGW-64是64位的,MinGW-32是32位的。 1.1 下载g++ 8.1     下载GCC 64位 编译器,比如MinGW-W64 GCC-8.1,

    2024年02月07日
    浏览(40)
  • VScode编译多文件执行与配置终端命令行

    vscode 的配置分两类,一是全局的用户配置,二是当前工作区配置。vscode 打开的文件夹的根目录是一个工作区,.vscode目录就是存放当前工作区相关配置文件的目录。 这样分享项目时,也把该项目的 vscode 配置分享出去了,保证了协同工作开发环境的统一性。 .vscode目录下配置

    2024年02月06日
    浏览(52)
  • vscode Cmake 多目录,多文件夹,多文件联合编译配置

    前言:网上好多同学发的都是单目录(一个文件夹下),多个cpp文件的联合编译。对于多文件夹,多目录,多个CPP文件的编译可查询的资料查起来不是很容易。 现在来总结一下: 一、单文件夹(即单目录)下的多.cpp使用code runner 运行代码的方式。               其他博文有

    2024年01月15日
    浏览(48)
  • 【交叉编译踩坑指北(一)】windows10下Vscode与Cmake编译生成文件

      工具链版本如下 C:UsersLenovocmake -version cmake version 3.24.2 C:UsersLenovomingw32-make -v GNU Make 4.2.1 Built for x86_64-w64-mingw32   若没有以上工具则进行安装,将bin文件加入到环境变量中, 注意:有的交叉编译器在安装时选择自动加入环境变量可能并不会加入,还是需要手动加入环

    2023年04月15日
    浏览(47)
  • vscode编译多文件复杂项目时tasks.json launch.json 的配置

    本文介绍了利用vscode编译复杂工程的方法,包括gcc和cmke编译时 tasks.json launch.json c_cpp_properties.json 的具体配置。 使用例子 c/c++在windows下编译:使用MinGW gcc从零编译项目 编译程序所需要的指令 上述tasks.json相当于在脚本中执行以下几条命令 每一条命令都要在tasks.json中的tasks中

    2024年02月05日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包