MacOS + VSCode配置C/C++环境

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

1.背景

C/C++项目的构建编译方式有多种,如在Windows平台上直接使用Visual Studio IDE集成的编译工具链进行构建编译,或CMake进行构建编译。当然,如果对于跨平台的IDE,可选Visual Studio Code(简称VSCode)。本文将针对VSCode配置C/C++的2种构建编译方式以及相关问题进行介绍,即VSCode自有C/C++构建编译模式配置CMake构建编译模式配置

2.在VSCode上的两种C/C++构建编译配置

2.1. 方式一:VSCode自有C/C++构建编译模式配置

个人推测该配置模式为微软官方仿照Visual Studio IDE的C/C++设计的。

(1)详细配置过程,请参考文档和配套视频。

(2).vscode隐藏目录中的三个配置文件示例

  • c_cpp_properties.json(编译器路径和智能代码提示配置文件)
    该文件主要负责编译器的路径设置和代码智能提示,个人感觉该文件的参数配置并不影响项目编译。这里,参数macFrameworkPathcompilerPathcompilerArgs可设置为CommandLineTools的C/C++环境,也可以设置为XCode自带的C/C++环境(如下示例)。
{
    "configurations": [
        {
            "name": "Mac-C",
            "includePath": [
                "/usr/local/include",
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "macFrameworkPath": [
                "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks"
            ],
            "compilerPath": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang",
            "cStandard": "c11",
            "cppStandard": "c++14",
            "intelliSenseMode": "macos-clang-x64",
            "compilerArgs": [
                "-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib"
            ]
        },
        {
            "name": "Mac-C++",
            "includePath": [
                "/usr/local/include",
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "macFrameworkPath": [
            	"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks"
            ],
            "compilerPath": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++",
            "cStandard": "c11",
            "cppStandard": "c++14",
            "intelliSenseMode": "macos-clang-x64",
            "compilerArgs": [
                "-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib"
            ]
        }
    ],
    "version": 4
}

如果,基于CommandLineTools的C/C++环境设置参数macFrameworkPathcompilerPathcompilerArgs,则有:

"macFrameworkPath": ["/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/System/Library/Frameworks"],
"compilerPath": "/Library/Developer/CommandLineTools/usr/bin/g++",
"compilerArgs": ["-L/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib"],
  • tasks.json(编译器构建配置文件)
    该文件主要用于编译参数的配置。这里的commandargs的最后一个参数-L/***、detail均可参考c_cpp_properties.json中对应参数设置。
{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "cppbuild",
			"label": "C/C++: clang++ 生成活动文件",
			"command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++",
			"args": [
				"-std=c++14",
				"-fcolor-diagnostics",
				"-fansi-escape-codes",
				"-g",
				"${workspaceFolder}/*.cpp",
				"-o",
				"${workspaceFolder}/${workspaceRootFolderName}",
				"-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib"
			],
			"options": {
				"cwd": "${fileDirname}"
			},
			"problemMatcher": [
				"$gcc"
			],
			"group": "build",
			"detail": "编译器: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++"
		}
	]
}
  • launch.json(调试器设置配置文件)
    该文件用于代码调试配置。
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问 https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(lldb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/${workspaceRootFolderName}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "lldb"
        }
    ]
}

注意一:

c_cpp_properties.json和tasks.json这两个文件的配置项实际上是相互独立的。它们之间没有强制性的依赖关系。也就是说,c_cpp_properties.json 的配置项并不会影响 tasks.json,而 tasks.json 的配置项也不会影响 c_cpp_properties.json。

不过,在实际使用中,这两个文件的配置项可能会有一些重叠的部分,例如编译器的路径、编译选项等。这时候,你需要确保这些重叠部分的配置项是一致的,以避免可能的问题和错误。

注意二:

关于引用第三方库,如OpenCV,配置方式参考博客。

2.2. 方式二:CMake构建编译模式配置

CMake编译模式的配置过程,网上的博客比较多,这里推荐参考博客。

注意:在此需要强调的是,CMake构建编译模式的配置过程与方式一并没有关系,也即并不依赖方式一的配置文件,是一种独立的构建编译模式。

3. CommandLineTools与Xcode的关系

CommandLineTools与Xcode是两个不同的工具集,但它们可以一起使用。

Xcode是苹果公司开发的一款综合性集成开发环境(IDE),主要用于开发macOS、iOS、watchOS和tvOS等操作系统的应用程序。它包括了许多工具,如图形化界面设计器、代码编辑器、调试器、工程构建工具等。

CommandLineTools是Xcode的一部分,它是一个独立的开发者工具包,可以用于在终端中编译和构建软件,而无需启动Xcode本身。它包括了大量的开发工具和库,如编译器、调试器、构建工具make、版本控制工具git等等。

因此,如果你只需要使用其中的一些工具,并不需要安装整个Xcode,那么你可以只安装CommandLineTools。但是,如果你需要使用Xcode中的完整功能(如图形化界面设计器等),则还需要安装Xcode。文章来源地址https://www.toymoban.com/news/detail-499994.html

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

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

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

相关文章

  • vscode开发stm32的编译环境配置教程

    2023年08月08日
    浏览(39)
  • 【 VScode上配置c++编译环境出现报错】

    VScode上配置c++编译环境出现报错: 在写好launch.json代码、tasks.json代码、c_cpp_properties.json代码之后,点击运行第一个“HelloWorld.cpp”代码,却出现“No such file or directory”弹窗报错 ` 如下图报错提示: 出现“No such file or directory”弹窗的原因是编译器无法找到所需的头文件或库文

    2024年02月07日
    浏览(34)
  • VSCode使用MinGW编译器,配置C/C++环境

    目录 一、安装VSCode 二、安装MinGW编译器 1、配置环境变量 2、测试配置是否成功 三、配置VSCode 1、安装所需扩展 2、新建代码存放文件夹 3、添加配置文件 4、配置文件内容 (1)c_cpp_properties.json (2)launch.json (3)settings.json (4)tasks.json 测试 其他:C++程序运行 每次换了电脑

    2024年01月20日
    浏览(41)
  • VSCode配置C/C++环境,编辑(VSCode)+ 编译(MinGW->GCC)+ 调试(MinGW->GBD)

      直接去官网下载并安装即可:https://code.visualstudio.com/。注意:VSCode只是编辑器,可以看代码,编辑代码,但不能编译代码。   如果说VSCode可以实现代码编辑,MinGW则可以实现代码编译和调试,其中编译功能是通过MinGW中的GCC实现的(生成一个.exe文件),调试功能则是通

    2024年02月07日
    浏览(38)
  • (超级详细)如何在Mac OS上的VScode中配置OpenGL环境并编译

    安装环境 机器:macbook air 芯片: M1芯片(arm64) macOS:macOS Ventura 13.4 VScode version:April 2023 1.78 下载GLAD与GLFW 一、下载GLAD ​ 1. 从GLAD的在线服务下载所需的文件,参数选择如下,可根据自己的需要进行更换: ​ ​ 2. 点击GENERATE生成 ​ 3. 下载相应的压缩包 ​ 4. 解压缩,正确

    2024年02月11日
    浏览(31)
  • flutter开发实战-build编译macos环境可安装dmg

    flutter开发实战-build编译macos环境可安装dmg 之前开发中需要变异Macos成dmg的需求,这里记录一下build编译macos环境可安装dmg的过程。 目录如下 如果工程没有macos,需要增加macos支持的平台。命令 运行macos无法访问http请求 可以在macos目录runner文件夹中 DebugProfile.entitlements和 Release

    2024年02月16日
    浏览(33)
  • 在MacOS 上 使用brew 部署C++ gcc编译环境

    brew包管理工具能够帮助我们更好的管理电脑中的各种工具 再尝试了很多次下载之后发现,需要使用到国内的包进行下载安装,不要使用官网的链接进行直接下载,很大可能会导致下载失败 按照提示,需要重启Terminal或者输入 输入后提示 原因可能是没有安装xcode–select 按照提

    2024年02月05日
    浏览(26)
  • Windows/macOS使用VSCode搭建C/C++的开发/Debug环境

    本文面向的对象是初次接触搭建C语言开发环境的学生或编程爱好者,以及想脱离诸如VC++6.0等过时开发工具从而转用VScode的人群 本文内容较多,篇幅较长,可按照需要选择阅读,文中如有纰漏,欢迎斧正。 我郑重承诺下面会是一篇极为详细的教程: 目录 一、安装并配置VSc

    2024年02月08日
    浏览(39)
  • macOS本地python环境/vscode/导入python包/设置python解释器

    查看macbook本地是否有python环境 输入 python 或者 python3 ,退出python环境使用 exit() ,别忘了括号 没有的话去官网安装https://www.python.org/ 2. 安装vscode 官网https://code.visualstudio.com/ 3. 安装插件 点击左边的“插件”按钮,安装这三个插件 4. 设置python解释器 点击左下角的“设置”按钮

    2024年02月09日
    浏览(36)
  • 从0开始学架构-架构设计的历史背景与目的

    机器语言-汇编语言-高级语言。 软件的规模和复杂度的大大增加,出现了两次软件危机。 第一次软件危机与结构化程序设计(20 世纪 60 年代~20 世纪 70 年代) 第二次软件危机与面向对象(20 世纪 80 年代) 随着软件系统规模的增加,计算相关的算法和数据结构不再构成主要的

    2024年02月13日
    浏览(37)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包