分类

分类: compiler

gcc 编译选项

最近常用的 GCC 编译选项:

g++ -std=c++14 -Wall -Wextra -Werror -Wfatal-error -pedantic-error

其中:

  • -std=c++14, 使用 C++14 的标准
  • -Wall, 打开大多数编译警告选项
  • -Wextra, 打开额外的编译警告选项
  • -Werror, 将编译警告转为编译报错,进而退出编译过程
  • -pedantic-error, 如果有违背 ISO C++ 标准, 有使用了语言扩展, 旧的语言特性等情况时, 都会报错
阅读全文 "gcc 编译选项" »

编译 LLVM 项目

最近开始研究 llvm 项目了. Rust 编译器也是基于它实现的.

LLVM 项目本身有多个子项目组成:

  • llvm, 编译器
  • lldb, 类似 gdb 的调试工具
  • clang, c/c++ 编译器前端
  • libcxx, c++ 标准库实现, 质量很棒, 可读性比较强
  • polly, 用来做数据计算优化
  • openmp, c/c++/fortran 并行计算库

首先是下载源代码, llvm 项目在 github 上面有完整的源码镜像:

$ git clone https://github.com/llvm/llvm-project
阅读全文 "编译 LLVM 项目" »