| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> 在Centos7上搭建VSCode C/C++开发环境() -> 正文阅读 |
|
[开发工具]在Centos7上搭建VSCode C/C++开发环境() |
1. 选择Clangd的原因在C/C++的Extensions中,官方提供了C/C++ Extension Pack扩展包,对于不想麻烦的朋友只需要安装官方提供的一套扩展就可以搭建好C/C++的开发环境。 (当然你事先要在centos上安装gcc、g++、cmake等工具) 如下图所示 ? 然而,这套扩展虽然能用,对比Clangd扩展来说体验不佳。 至于Clangd好在哪,现在火热的Jetbrains公司的Clion以及Vim上的Youcompleteme插件现在都在用它。代码的自动补全准确度、quix fix解决方案等等都完虐C/C++扩展。微软自己搞的这一个C/C++扩展,属实比不上clangd。所谓的这一个C/C++扩展大家应该很熟悉,就是下图这位: ? ?2. Centos7环境的配置CentOS7的配置与Ubuntu的配置难度完全不同,在Ubuntu 20.04LTS上只需要安装Clangd一个插件,即可完成环境的配置。Centos7难在哪呢? 2.1 llvm的编译安装Centos7的gcc、libstdc++.so都太老了,gcc版本才4.8、安装clangd后,会提示glibc 2.18未安装。 有朋友可能会说,通过scl源安装新版的不就可以了?但事实没有那么简单,安装高版本的gcc编译器仍然解决不了glibc的问题,编译gblic 2.18需要gcc的版本高于7.0这一个条件可以通过安装scl的gcc 7.x版本解决,但是glibc是不能轻易替换的,否则服务器中跑的程序有可能直接跑不起来了。 因此:另辟蹊径。 参考大佬的文章,可以编译LLVM(其中包含了clangd)低版本的:Centos7 打造 C/C++ 开发环境_thewangcj的博客-CSDN博客_centos7 安装c++环境l? ? 但是在实操过程中还是遇到了编译不了的情况,最后发现大佬的文章,是直接编译高版本的llvm,不考虑低版本gcc的兼容性,实测clangd作为一个server与gcc编译的项目关系不大,而且很好用。 Centos7上源码编译安装llvm 11.0.0 - 知乎 编译过程简述如下: 1. 通过scl安装新版的gcc 7.3 2. 将bash环境切换到gcc 7.3 3. 编译安装llvm 11.0.0
?注意:上面的"Unix Makfiles"可以换成Ninja,-DLLVM_ENABEL_PROJECT后面可以加上自己想要的,比如lldb;clang-tools-extra等。 3. clangd插件的安装在完成clangd的安装之后,才可以安装clangd插件(否则它会自己下载不能运行的clangd程序) 如果你之前一直在用C/C++插件,突然换成了clangd,可能会出现代码不知名的错误,建议删除~/.vscode目录,再将插件重新安装 4. 结束Enjoy! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 23:30:32- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |