关于CLion有时找不到标准库的解决方案
CLion是linux下C++开发的利器。出色的语法高亮,支持cmake工程让同类IDE望尘莫及。
但是我在实际开发中遇到了标准库(STL)相关的语法高亮不能正常运行的问题。
问题情境
我们用UBUNTU做开发机,开发嵌入式程序,做交叉编译。用一个配置文件指定要使用的C/C++编译器、库文件和目标文件系统。启动CLion时如果先在命令行下source该文件,再打开CLion就能让CLion找到相关的库和头文件,让cmake文件正确被解析。
但是这样做之后,CLion就找不到标准库的头文件了。
解决办法
先不要source设置开发环境的配置文件,单独打开CLion,它无法正确解析cmake文件,因为很多库和头文件是找不到的。
但是CLion会给出cmake头文件解析的错误。将这些找不到的库和头文件还有环境变量注释掉。让cmake文件通过解析。
这时会发现标准库的类型都能正确解析了!而且外部依赖里也多了标准库所在的文件夹。
这时将cmake文件恢复原样,发现标准库的外部依赖还在!关掉CLion,source配置文件,再打开CLion,一切正常!cmake通过了解析,标准库类型也被正确高亮!
后记
这可能是CLion的bug,有空了我要做个demo发给CLion团队,让他们解决这个问题。