当前位置: 首页 > news >正文

第20章 Mac+VSCode配置C++环境

1. 下载VSCode

  1. VSCode下载地址
  2. 在mac终端里输入xcode- select --install命令,根据提示安装xcode工具。

2. 安装插件(4个)

  1. 打开VScode,点击应用右侧菜单栏
    在这里插入图片描述
  2. C/C++(必装)
    在这里插入图片描述
  3. Code Runner(必装)
    在这里插入图片描述
  4. CodeLLDB(代码调试),不安装这个插件程序调试时,无法在vscode自带的终端里输入参数
    在这里插入图片描述

3. 配置环境

  1. 新建文件夹
    在这里插入图片描述
  2. 打开文件夹
    在这里插入图片描述
  3. 在code下新建001_EvnTest.cpp
    在这里插入图片描述
  4. 点击右上角的小齿轮
    在这里插入图片描述
  5. 选择点击C/C++:gcc或者C/C++:clang
    在这里插入图片描述
  6. 会自动添加launch.json和tasks.json文件,并自动打开launch.json文件
    在这里插入图片描述
  7. 配置launch.json和tasks.json文件
  • launch.json文件配置

    {"configurations": [{"name": "C/C++: g++ build and debug active file","type": "cppdbg","request": "launch","program": "${fileDirname}/${fileBasenameNoExtension}","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": false,"MIMode": "lldb","preLaunchTask": "C/C++: g++ build active file"}],"version": "2.0.0"
    }
    
  • task.json文件配置

    {"tasks": [{"type": "cppbuild","label": "C/C++: g++ build active file","command": "/usr/bin/g++","args": ["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}"],"options": {"cwd": "${fileDirname}"},"problemMatcher": ["$gcc"],"group": "build","detail": "Task generated by Debugger."}],"version": "2.0.0"
    }
    

4. 运行程序

  1. 运行程序,点击Run Code运行程序,程序会在终端中运行
    在这里插入图片描述
  2. 调试程序,不要使用右上角的debug,使用左侧菜单栏中的调试
    在这里插入图片描述

5. 遇到的问题

  1. 如果在运行程序的时候,遇到问题Undefined symbols for architecture x86_64:
    Undefined symbols for architecture x86_64:"_main", referenced from:implicit entry/start for main executable
    ld: symbol(s) not found for architecture x86_64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    
    原因:cpp文件的文件名不合规,比如用了特殊符合,空格等。
http://www.lryc.cn/news/390709.html

相关文章:

  • FactoryBean 原理简介
  • Redis中hash类型的操作命令(命令的语法、返回值、时间复杂度、注意事项、操作演示)
  • UE5基本操作(二)
  • React Navigation 和 Expo Router
  • 如何使用python网络爬虫批量获取公共资源数据教程?
  • 常见位运算总结
  • 自动化任务工具 -- zTasker v1.94 绿色版
  • mybatis mapper.xml 比较运算符(大于|小于|等于)的写法: 转义和<![CDATA[]]>
  • UE5的基本操作
  • C++ 实现学生成绩管理系统
  • Elasticsearch 第四期:搜索和过滤
  • 力扣1124.表现良好的最长时间段
  • 算法训练营day67
  • 人工智能--图像语义分割
  • fl studio20和21用哪一个好?FL-Chan from FL Studio欣赏
  • OpenCV直方图计算函数calcHist的使用
  • 09 docker 安装tomcat 详解
  • 44.实现管理HOOK点的链表对象
  • Unity小知识
  • 【Jupyter Notebook与Git完美融合】在Notebook中驾驭版本控制的艺术
  • Python开发者必看:内存优化的实战技巧
  • Golang | Leetcode Golang题解之第214题最短回文串
  • 【ajax实战08】分页功能
  • 基于Hadoop平台的电信客服数据的处理与分析②项目分析与设计---需求分析-项目场景引入
  • debug-mmlab
  • 年轻人为什么那么爱喝奶茶?
  • 手写数组去重
  • Firewalld 防火墙
  • Hive查询优化 - 面试工作不走弯路
  • 【VUE3】uniapp + vite中 uni.scss 使用 /deep/ 不生效(踩坑记录三)