在Ubuntu中用CLion来管理LLVM/Clang工程

LLVM编译教程
本文详细介绍了在Ubuntu18.04.1环境下使用CLion安装配置及编译LLVM/Clang的过程,包括配置C/C++编译环境、安装依赖、配置编译参数等内容。


前言

LLVM作为一个大型的编译套件,各种类继承关系,函数调用等十分繁杂,在Ubuntu下为了更好的,更方便的阅读LLVM套件的源码,希望通过CLion这个优秀的ide来管理这个工程。以下详细的记录了我在Ubuntu18.04.1中安装CLion和编译LLVM/Clang的步骤。对于初学者十分友好!!!


1、安装配置CLion

1.1、换源

目前我的系统仍然是刚刚安装的Ubuntu,先换上阿里源(以方便后续快速下载安装依赖包)

# 1.先用root权限打开sourses.list文件
$ sudo gedit /etc/apt/sources.list

# 2.将文件中原有的内容删除,复制粘贴下面阿里源,保存退出
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

# 3.在shell中输入以下指令更新
$ sudo apt update && sudo apt upgrade

1.2、下载安装CLion

CLion官网获取CLion的安装包,此处我安装的是2019.3.6版本
Version 2019.3
通过Ubuntu中火狐浏览器下载的安装包应该在用户的Download目录中,我这里将其移动到用户目录中,并通过以下命令解压:

$ tar -zxvf CLion-2019.3.6.tar.gz 
### 如何在 CLion 中批量移除代码中的双斜杠 (`//`) 注释 在 CLion 中,可以通过多种方式实现批量移除代码中的 `//` 注释。以下是具体的操作说明: #### 使用正则表达式替换功能 CLion 提供强大的查找和替换功能,支持通过正则表达式来匹配特定模式并进行修改。 1. 打开 **Find and Replace** 对话框:按下快捷键 `Ctrl+R` (Windows/Linux) 或 `Cmd+R` (Mac)。 2. 在 **Find** 输入框中输入正则表达式以匹配 `//` 及其后的注释内容: ```regex ^\s*\/\/.*$ ``` 这里的正则含义如下: - `^`: 表示行首。 - `\s*`: 匹配零个或多个空白字符(包括空格和制表符)。 - `\/\/`: 匹配两个连续的 `/` 字符(需转义为 `\/`)。 - `.*`: 匹配任意数量的字符直到行尾。 - `$`: 表示行尾。 3. 将 **Replace with** 设置为空字符串(即删除匹配的内容)。 4. 确保启用了 **Regex mode**(通常是一个带有 `.=` 图标的按钮),以便启用正则表达式解析。 5. 单击 **Replace All** 按钮完成操作[^1]。 #### 自定义脚本处理 如果需要更复杂的逻辑或者希望自动化此过程,可以编写一个小脚本来完成任务。例如,使用 Python 脚本读取文件并移除所有 `//` 开头的单行注释: ```python import re def remove_comments(file_path): with open(file_path, 'r', encoding='utf-8') as file: lines = file.readlines() cleaned_lines = [] comment_pattern = re.compile(r'^\s*//.*$') for line in lines: if not comment_pattern.match(line): # 如果不匹配注释,则保留该行 cleaned_lines.append(line) with open(file_path, 'w', encoding='utf-8') as file: file.writelines(cleaned_lines) # 示例调用 remove_comments('example.cpp') ``` 运行上述脚本即可清除指定 C++ 文件中的所有单行注释[^2]。 #### 配置编码问题以防乱码影响 当涉及大量文本编辑时,可能会遇到因编码设置不当而导致的乱码现象。为了避免此类情况发生,请按照以下建议调整 IDE 的全局字体与编码选项: - 前往菜单栏路径 `File -> Settings -> Editor -> File Encodings`,确认默认编码设为 UTF-8。 - 若仍存在显示异常,可尝试切换至其他兼容性更高的字体样式,如 Consolas 或 Monaco[^3][^4]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值