clang大法好,Clion大法好。

1. 下载并安装Clion

Clion官方网站:https://www.jetbrains.com/clion/
clion

2. 下载并安装CMake(3.14.6)

CMake官方网站:https://cmake.org/
cmake

选择download latest release后,选择对应版本下载安装:
cmake3.14.6

安装完毕后,打开终端运行:

1
cmake --version

出现以下状态表明安装成功:
cmake success

否则请手动添加cmake路径到系统path重试以上命令:
cmake path

3. 下载安装MSYS32

3.1 下载安装

MSYS32官网:http://www.msys2.org/

3.2 更改镜像源

由于万里长城,墙内用户请改为清华大学的源

方法为修改下面C:\msys64\etc\pacman.d的以下三个文件:
modify files

1.mirrorlist.msy

1
2
3
4
5
6
7
8
9
10
11
##
## MSYS2 repository mirrorlist
##

## Primary
## msys2.org
## Server = http://repo.msys2.org/msys/$arch
## Server = http://downloads.sourceforge.net/project/msys2/REPOS/MSYS2/$arch
## Server = http://www2.futureware.at/~nickoe/msys2-mirror/msys/$arch/

Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch

2.mirrorlist.mingw32

1
2
3
4
5
6
7
8
9
10
11
##
## 32-bit Mingw-w64 repository mirrorlist
##

## Primary
## msys2.org
## Server = http://repo.msys2.org/mingw/i686
## Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/i686
## Server = http://www2.futureware.at/~nickoe/msys2-mirror/i686/

Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686

3.mirrorlist.mingw64

1
2
3
4
5
6
7
8
9
10
11
##
## 64-bit Mingw-w64 repository mirrorlist
##

## Primary
## msys2.org
## Server = http://repo.msys2.org/mingw/x86_64
## Server = http://downloads.sourceforge.net/project/msys2/REPOS/MINGW/x86_64
## Server = http://www2.futureware.at/~nickoe/msys2-mirror/x86_64/

Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64

接着更新Msys32的环境,依次执行:

1
2
3
pacman -Sy pacman
pacman -Syu
pacman -Su

4. 使用MSYS32安装LLVM和make

4.1 MSYS安装LLVM

执行:pacman -S mingw-w64-x86_64-llvm mingw-w64-x86_64-clang

4.2 MSYS安装make

执行:pacman -S base-devel gcc vim cmake

5. 在Clion中配置Clang环境

5.1 CMake配置

  • CMake option:-D_CMAKE_TOOLCHAIN_PREFIX=llvm-
  • Environment: CC=C:\msys64\mingw64\bin\clang.exe;CXX=C:\msys64\mingw64\bin\clang++.exe
  • Build option: -j 4

cmake

5.2 Toochains配置如下:

toochain

5.3 刷新项目

update

6. 环境测试

如果以上配置正确,那么刷新完成后应该是这个界面:
success

6.1 编译测试

compile test

6.2 运行测试

run test

6.3 调试测试

TODO,目前调试器仍然无法解决,初步推算是因为在64位环境下使用了32位的GDB调试器。令人头大。

参考资料

  1. 更换MSYS32源:http://blog.illidan.org/2016/11/10/Msys2/
  2. 使用在Clion中使用clang编译器:https://intellij-support.jetbrains.com/hc/en-us/community/posts/206606735-Using-Clang-With-CLion-on-Windows?page=1#community_comment_115000631284
  3. 在Windows下使用gcc相关环境:https://www.devdungeon.com/content/install-gcc-compiler-windows-msys2-cc