一、编译器设置
GCC
Linux ———— 已经自带,不用安装
Windows —— MinGW-w64
- 打开链接往下翻,找到 x86_64-win32-seh 并下载解压。
(不建议下载 Online Installer 包,在线安装速度可能很慢) - 解压后把 mingw64 文件夹移动到不含中文的目录,以 C:\ 为例。
- 手动把 C:\mingw64\bin 添加到系统 Path 环境变量,添加方法自行百度。
*Clang
为什么要用 Clang?(C/C++: clang 代替 gcc)
[Linux]: sudo apt install llvm clang
[Windows]: LLVM | 打开链接,找到对应安装包并下载,安装时记得勾选添加到环境变量
*CMake
Linux
sudo apt install cmake
Windows
CMake | 打开链接,找到对应安装包并下载,安装时记得勾选添加到环境变量
Python
[Windows]: Python | 打开链接,找到对应安装包并下载,安装时记得勾选添加到环境变量
[Linux]: 自带 Python2
Python3 需要手动下载安装:
Python | 下载解压,在解压所得目录打开终端
编译安装:./configure > make > sudo make install
添加到环境变量:export PATH="$PATH:/usr/local/bin/python"
修改默认编译器: sudo update-alternatives --config python
Java
[Windows]: OpenJDK | 打开链接,找到对应安装包并下载,安装时记得勾选添加到环境变量
[Linux]: OpenJDK | 类似 Windows 下安装 MinGW-w64,下载解压到自定义目录
- 设置 JAVA_HOME 环境变量:export JAVA_HOME=/usr/local/jdk-11
- 设置 PATH 环境变量:export PATH=
PATH
- 使配置文件生效:sudo source ~/.bash_profile
- 修改默认编译器: sudo update-alternatives --config java
- *# 一、VS Code 内部设置:
下载安装:主页 / 官方文档
必备扩展:
- Chinese Language Package // 官方汉化包
- Code Runner // 快速运行代码
- C/C++ Extension Pack // C/C++扩展包
- Java Extension Pack // Java 扩展包
- Python、Pylance // Python 扩展
- Markdown All in One // 用来看一些项目的说明文档
快速设置:
设置 > 窗口 > Title Bar Style > custom // Linux版,去除顶栏
头像 > 登录 > 自动同步设置
设置 > 文本编辑器 > 文件 >
Auto Save // 自动保存
Auto Guess Encoding // 自动猜测文本编码
设置 > 功能 > 终端 >
Confirm On Exit // 退出时提醒还有没关的终端
Cursor Blinking // 开启光标闪烁
Cursor Style: line // 竖线式光标
设置 > 扩展 > C/C++ >
Default Compiler Path: "你的安装目录/mingw64/bin" // 让插件能找到头文件,防止烦人的提醒
设置 > 扩展 > Run Code configuration >
Clear Previous Output // 运行时清空上次的输出
File Directory As Cwd // 以文件所在目录为工作目录
Run In Terminal // 在终端运行才可以交互
Save File Before Run // 运行前保存文档
设置 > 扩展 > CMake Tools >
Configure On Open: False // 取消每次打开就自动 make
状态栏左下角: [未选择任何工具包] -> GCC(这步需要在打开具体项目时完成)
修改 Code Runner 的默认编译器为 Clang
设置 > 扩展 > Run Code configuration > Executor Map
把 gcc 改成 clang -target x86_64-pc-windows-gnu
把 g++ 改成 clang++ -target x86_64-pc-windows-gnu
Linux 下不需要加参数 -target x86_64-pc-windows-gnu | 具体原因 |
三、解决一些常见问题
PowerShell 中文输出乱码问题
以管理员身份打开 PowerShell,执行:Set-ExecutionPolicy Unrestricted
在 "我的电脑->文档" 里新建文件夹:WindowsPowerShell
再在里面新建文本文档:Microsoft.PowerShell_profile.ps1
用记事本写入如下内容:
$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = New-Object System.Text.UTF8Encoding
保存后打开 PowerShell,执行 chcp 命令,若显示 Active code page: 65001 则成功。
CMake 相关报错
!"The C/CXX compiler identification is unknown":
原因:运行 cmake - help 可以查看到 Windows 版 CMake 默认生成器不是 MinGW
解决:执行 cmake 时添加参数,如下:cmake -G"MinGW Makefiles" .
!"无法将 “make” 项识别为 cmdlet、函数、脚本文件或可运行程序的名称":
把 mingw64\bin 里面的 mingw32-make.exe 原地复制一份,改名为 make.exe
!cmake 完成后,直接执行 make 不成功 > "No targets specified and no makefile found":
原因:cmake 创建了 build 目录,Makefile 放在 build 里了
解决:先 cd build 再 make
参考:https://zhuanlan.zhihu.com/p/94028777
Windows 窗口程序相关错误
Hello World program using Win32API
!鼠标双击运行编译出来的 main.exe 会有控制台黑窗:
编译时添加参数 -mwindows,像这样:g++ -mwindows main.cpp
C ++ Win32 编程:您的第一个 Windows 程序
!直接编译运行会遇到以下错误: > "undefined reference to 'WinMain'":
原因:wWinMain 是 Unicode 版的 WinMain | 详细解释 |
解决:编译时添加参数 -municode,像这样:g++ -municode main.cpp | 来源 |
网友评论