我已经在博客里面发布了好几篇 CLion 使用笔记了,没追究这是第几篇,姑且算作第三篇。

我的 CLion 是搭配了 MSYS2Conan 使用的。MSYS2 提供 C++ toolchain。Conan 作为 C++ 包管理工具,用它可以方便地安装 Boost 等 C++ 库。

MSYS2 真是个好东西。很多包都更新得很快。我又有更新强迫症。每天好几遍 pacman -Syuu。刚才把 GCC 更新到了 9.1。GCC 9.1 是 5 月 3 号发布的。

每次更新 GCC 之后,需要在 CLion 中的一些地方修改 GCC 的版本,这些修改是关于 CMake 和 Conan 的。

关于 CMake 的修改

  1. 删除 cmake-build-debug/CMakeCache.txt (也可能是 cmake-build-release/CMakeCache.txt 或其他路径)
  2. File > Reload CMake Project

UPDATE

cmake-build-debug/conaninfo.txt 中也有编译器版本信息 compiler.version,需要确认其值是否正确。

关于 Conan 的修改

这一步也许不是必须的,不过我一般都会做。就是用最新的 GCC 把通过 Conan 安装的包重新 build(编译)一下。

方法是

点击 CLion 窗口底部的 Terminal 标签。

在 Terminal 中切换到项目的根目录,然后执行

conan install . --install-folder=cmake-build-debug --build-missing '与编译器版本和编译器路径相关的参数'

根据官方文档,可以把上述「与编译器版本和编译器路径相关的参数」写到一个配置文件里,这种配置文件称为 profile。注意,profile 文件不需要扩展名。

我把我用的 profile 文件命名为 gcc,其内容是

# I define this variable to store the root direcory of GCC
GCC_BIN=D:\msys64\mingw64\bin [settings]
os=Windows
arch=x86_64
compiler=gcc
# set compiler.version to the proper value
compiler.version=9.1
compiler.libcxx=libstdc++11
build_type=Debug [options] [build_requires] [env]
CC=$GCC_BIN\gcc
CXX=$GCC_BIN\g++

注意,在 profile 中,注释要单独写在一行,不能写在某个配置行的末尾。

通过 -pr 选项引入 profile,格式是 -pr=path/to/prile

最新文章

  1. [LeetCode] Binary Tree Inorder Traversal 二叉树的中序遍历
  2. day01-1 常用dos命令
  3. 聊下并发和Tomcat线程数(错误更正)
  4. 使用sublime text3的一些事
  5. A taste of urllib3
  6. Unity3d:播放物理目录下的MP3文件
  7. Android Compatibility package 兼容性开发套件
  8. npm在项目目录安装插件需要使用sudo
  9. Layout No collapsible
  10. 使用IDEA,利用SpringMVC框架建立HelloWorld项目
  11. 11997 - K Smallest Sums(优先队列)
  12. JS面向对象基础
  13. C语言到C++(1) - 基本变化
  14. Java----前端验证之验证码额实现
  15. redis和spring整合使用
  16. 25. pt-slave-restart
  17. 【java】之深入理解JVM
  18. liunx trac 邮件提示功能
  19. java基础---->git的使用(一)
  20. Vulnhub Breach1.0

热门文章

  1. Linux下bash的快捷键
  2. 2018.5.22 Oracle安装配置在虚拟机中外部电脑连接服务
  3. 多线程:InterlockedIncrement
  4. 第十一篇、UITableView headerview下拉放大
  5. Vue 恢复初始值的快速方法
  6. JSON.parse(text[, reviver])
  7. 1037: [ZJOI2008]生日聚会Party
  8. Java中的接口和抽象类(转)
  9. Android如何添加多张引导页
  10. SetUnhandledExceptionFilter