博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Win 7 下 C++ 编译环境 MSYS2 MinGW 64-bit + Visual Studio Code
阅读量:6000 次
发布时间:2019-06-20

本文共 2803 字,大约阅读时间需要 9 分钟。

1. MSYS2

国内使用中科大的源,详见:

pacman -S mingw-w64-x86_64-toolchain

1.1 踩过的坑

初始直接安装

pacman -S gcc

而gcc -version 后发现是 7.4 而非 8.2 的。

后使用指令后版本变成 8.2 了。

pacman -S mingw-w64-x86_64-gcc

但后来 gdb 时还需要手动安装一下。若空间足够,可以手动安装。

pacman -S mingw-w64-x86_64-gdb

2. 使用 make 跑一下

test.cpp

#include
int main(void) { long int tag = __cplusplus; if(tag == 201703L) std::cout << "C++17\n"; else if(tag == 201402L) std::cout << "C++14\n"; else if(tag == 201103L) std::cout << "C++11\n"; else if(tag == 199711L) std::cout << "C++98\n"; else std::cout << "pre-standard C++\n"; return 0;}

makefile

CPPFLAGS=-Wall -std=c++17all:testclean:    rm test.exe

结果:

$ ./test.exeC++17

3. 使用 Visual Studio Code

3.1 安装扩展:C/C++

3.2 新建文件夹

File -> Open Folder, Create a new Folder 'test'

create a new file test.cpp, the same as 2.

3.3 配置文件

create a dir .vscode with 3 files.

c_cpp_properties.json

{    "configurations": [        {            "name": "Win32",            "includePath": [                "c:\\msys64\\mingw64\\include",                "c:\\msys64\\mingw64\\lib\\gcc\\x86_64-w64-mingw32\\8.2.1\\include",                "${workspaceFolder}/**"            ],            "defines": [                "_DEBUG",                "UNICODE",                "_UNICODE"            ],            "compilerPath": "C:\\msys64\\mingw64\\bin\\gcc.exe",            "cStandard": "c11",            "cppStandard": "c++17",            "intelliSenseMode": "clang-x64"        }    ],    "version": 4}

用于编译的 tasks

tasks.json

{    "version": "2.0.0",    "tasks": [        {            "label": "g++",            "type": "shell",            "command": "g++",            "args": [                "${file}", "-g", "-o", "${fileDirname}/${fileBasenameNoExtension}.exe", "-std=c++17"            ],            "group": {                "kind": "build",                "isDefault": true            }        }    ]}

用于运行加载的launch.json

{    "version": "0.2.0",    "configurations": [        {            "name": "(gdb) Launch",            "type": "cppdbg",            "request": "launch",            "program": "${fileDirname}/${fileBasenameNoExtension}.exe",            "args": [],            "stopAtEntry": false,            "cwd": "${workspaceFolder}",            "environment": [],            "externalConsole": false,            "MIMode": "gdb",            "miDebuggerPath": "c:\\msys64\\mingw64\\bin\\gdb.exe",            "setupCommands": [                {                    "description": "Enable pretty-printing for gdb",                    "text": "-enable-pretty-printing",                    "ignoreFailures": true                }            ],            "preLaunchTask": "g++"        }    ]}

4. 编译

快捷键:ctrl+shift+B

鼠标的用法:

先选中 test.cpp
再Terminal -- Run Task -- g++ -- Continue...
Terminal 中会有编译成功的消息。

5. 运行 F5

会出现输出结果

C++17

转载地址:http://fmzmx.baihongyu.com/

你可能感兴趣的文章
Performing a thread dump in Linux or Windows--reference
查看>>
推荐系统中常用算法 以及优点缺点对比
查看>>
cocos2d-x v3.2环境配置(现在3.x版本号可以配置该)
查看>>
穷举法解决旅行商问题
查看>>
括号配对问题
查看>>
Oracle自学笔记(一)
查看>>
利用5w1h写出高效的git commit
查看>>
用div和css样式控制页面布局
查看>>
Python自定义库文件路径
查看>>
Get和Post的区别
查看>>
Redis--优化
查看>>
JSTL截取字符串以及格式化时间
查看>>
Bugtags 使用技巧之 setUserData
查看>>
Go语言标准库之JSON编解码
查看>>
使用windows search 搜索文件和文件夹(一)
查看>>
“江苏科技”背后有哪些大咖倾力参与?
查看>>
mysql优化
查看>>
mysqldump & binlog做完全备份
查看>>
杨辉三角
查看>>
centos修改主机名
查看>>