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

【Trae】如何使用Trae编译C++(附带MinGW)

结果

先看结果
这是一道回文串题目,F5编译,控制台输入输出。
在这里插入图片描述

下载

  • 下载Trae编译器,直接去官网下:https://www.trae.cn/
  • 下载VSCode编译器,这个相信用Trae的各位都不陌生。https://code.visualstudio.com/
    • 查看你的C盘,C:\Users\Administrator\.vscode\extensions路径下是否有extensions.json文件,如果没有,请将VSCode卸载后重装。

安装插件

在VSCode里安装“C/C++”插件。
在这里插入图片描述
这里需要在VSCode里安装的原因是C/C++插件在Trae里是搜不到的。
再次查看C:\Users\Administrator\.vscode\extensions路径,看看插件是否安装成功,且extensions.json文件里有这个插件。
在这里插入图片描述

在这里插入图片描述
关闭VSCode,打开Trae。
点击右上角头像-IDE设置
在这里插入图片描述
选择“从VSCode导入”,等待它导入插件,导入完成后点击查看一下,是不是下载的那些插件。
在这里插入图片描述

编译

新建一个文件夹,用Trae打开,再在里面新建一个cpp文件,输入一段HelloWorld代码。
在这里插入图片描述
会看到自动生成了一个.vscode文件夹。
在这里按F5运行,如果运行成功,会出现如下所示。
在这里插入图片描述
如果运行失败,请进行如下配置。
下载MinGW并安装到D盘(傻瓜式教学,跟着安就行,除非你知道要修改的json里每个参数的意义)
这里我贴心地给大家建了项目。
https://gitcode.com/qq_36286039111111111111111mq8/MyMinGW.git
把这个项目拉下来,MinGW放到D盘,bin文件夹的路径如下所示。
在这里插入图片描述
并且在环境变量的PATH里配置这个bin文件夹(相信各位对PATH都很熟悉)
在这里插入图片描述
接下来来到Trae,找到那个.vscode文件夹
c_cpp_properties.json

{
{"configurations": [{"name": "windows-gcc-x64","includePath": ["${workspaceFolder}/**"],"compilerPath": "D:/MinGW/bin/gcc.exe","cStandard": "${default}","cppStandard": "${default}","intelliSenseMode": "windows-gcc-x64","compilerArgs": [""],"browse": {"limitSymbolsToIncludedHeaders": true,"databaseFilename": "","path": ["${workspaceFolder}/**","D:/mingw/include/**","D:/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++","D:/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32","D:/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward","D:/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include","D:/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed","D:/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"]}}],"version": 4
}
}

launch.json

{"version": "0.2.0","configurations": [{"name": "(gdb) Launch","type": "cppdbg","request": "launch","program": "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": [],"externalConsole": false,"MIMode": "gdb","miDebuggerPath": "D:/MinGW/bin/gdb.exe","preLaunchTask": "g++","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}]},{"name": "C/C++ Runner: Debug Session","type": "cppdbg","request": "launch","args": [],"stopAtEntry": false,"externalConsole": true,"cwd": "i:/work/MyGit/MyCpp_Git","program": "i:/work/MyGit/MyCpp_Git/build/Debug/outDebug","MIMode": "gdb","miDebuggerPath": "gdb","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}]}]
}

settings.json 这个不一定需要,但我还是放在这里

{"C_Cpp_Runner.cCompilerPath": "gcc","C_Cpp_Runner.cppCompilerPath": "g++","C_Cpp_Runner.debuggerPath": "gdb","C_Cpp_Runner.cStandard": "","C_Cpp_Runner.cppStandard": "","C_Cpp_Runner.msvcBatchPath": "","C_Cpp_Runner.useMsvc": false,"C_Cpp_Runner.warnings": ["-Wall","-Wextra","-Wpedantic","-Wshadow","-Wformat=2","-Wcast-align","-Wconversion","-Wsign-conversion","-Wnull-dereference"],"C_Cpp_Runner.msvcWarnings": ["/W4","/permissive-","/w14242","/w14287","/w14296","/w14311","/w14826","/w44062","/w44242","/w14905","/w14906","/w14263","/w44265","/w14928"],"C_Cpp_Runner.enableWarnings": true,"C_Cpp_Runner.warningsAsError": false,"C_Cpp_Runner.compilerArgs": [],"C_Cpp_Runner.linkerArgs": [],"C_Cpp_Runner.includePaths": [],"C_Cpp_Runner.includeSearch": ["*","**/*"],"C_Cpp_Runner.excludeSearch": ["**/build","**/build/**","**/.*","**/.*/**","**/.vscode","**/.vscode/**"],"C_Cpp_Runner.useAddressSanitizer": false,"C_Cpp_Runner.useUndefinedSanitizer": false,"C_Cpp_Runner.useLeakSanitizer": false,"C_Cpp_Runner.showCompilationTime": false,"C_Cpp_Runner.useLinkTimeOptimization": false,"C_Cpp_Runner.msvcSecureNoWarnings": false,"files.associations": {"cctype": "cpp","cmath": "cpp","cstdarg": "cpp","cstdint": "cpp","cstdio": "cpp","cstdlib": "cpp","type_traits": "cpp","limits": "cpp","typeinfo": "cpp","iostream": "cpp"},"terminal.integrated.suggest.enabled": true
}

tasks.json 这个文件不一定需要,但我还是放在这里。
注意像我这样配置需要在项目目录下新建一个名为exe的文件夹,用于存储编译过后的文件。

{"version": "2.0.0","command": "g++","args": ["-g","${file}","-o","${workspaceFolder}/exe/${fileBasenameNoExtension}.exe"],"problemMatcher": {"owner": "cpp","fileLocation": ["relative","\\"],"pattern": {"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$","file": 1,"line": 2,"column": 3,"severity": 4,"message": 5}},"tasks": [{"type": "cppbuild","label": "g++","command": "D:/MinGW/bin/g++.exe","args": ["-fdiagnostics-color=always","-g","${file}","-o","${workspaceFolder}/exe/${fileBasenameNoExtension}.exe",""],"options": {"cwd": "D:/MinGW/bin"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true},"detail": "调试器生成的任务。"}]
}

至此再去尝试编译,一般没什么大问题 ,报什么错就去解决一下就好了。

QA

  1. 如果控制台能编译成功就是不能输入数据怎么办?
    我遇到了之后是MinGW版本问题,把原本的MinGW删了,装我在文章里给的那个。
  2. 报错找不到g++?
    PATH没配置。
http://www.dtcms.com/a/499466.html

相关文章:

  • thinkpad t480 更换开机LOGO
  • 重庆网站建设就选承越做国外的众筹网站
  • Go基础知识(二)
  • Go小工具合集
  • Go 1.26 内置函数 new 新特性
  • 十堰微网站建设多少钱wordpress开头
  • Debian 的 网络管理器 被意外卸载,修复过程
  • 网站备案流程浏览器打不开网页是什么原因
  • Rust中字符串与格式化
  • Linux网络--6、网络层
  • 福州网站建设哪家专业怎么在自己的网站上推广业务
  • 数据结构——队列的顺序存储结构
  • Android Bootloader启动逻辑深度解析
  • 【机械臂运动学基础】变换矩阵
  • 购物网站开发意义大气广告设计网站源码 企业公司模板 dedecms5.7 企业网站
  • 包资源管理器NPM 使用
  • 在PHP框架里如何进行数据库连接?
  • 网站建设后压缩代码邢台又一地被划定高风险区域
  • 《彻底理解C语言指针全攻略(6)-- qsort、sizeof和strlen》
  • 网站开发的工资是多少wordpress 获取文章图片标题
  • C++ - List
  • 阿里服务器怎么做网站服务器上海网站制作公司介绍
  • MAC mini /绿联NAS 上安装本地AFFiNE
  • h5游戏免费下载:怪物联盟
  • 酒店网站建设方案网站验证码出不来
  • 【JAVA】Java8的 Stream相关学习分析总结
  • 虚幻引擎5 GAS开发俯视角RPG游戏 P06-06 次要属性
  • 基于Vue的保护动物信息管理系统r7zl6b88 (程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 深圳AI搜索优化怎么样
  • 工商网站查询企业信息官网购物平台最新排名