2 个版本
0.3.9 | 2023年10月22日 |
---|---|
0.3.7 | 2017年11月22日 |
0.3.6 |
|
0.3.4 |
|
#742 in 编程语言
用于 2 个crate(通过 c3)
385KB
10K SLoC
C3
用于 C3 项目的内部。
构建
- 如果从先前版本的 LLVM 升级,请运行
cargo clean
- 从源代码构建 LLVM 4 或 5 和 Clang(需要
libclang.a
,预构建的包不会有它)。 - 将包含
llvm-config
的目录添加到您的PATH
,或将LLVM_CONFIG_PATH
环境变量设置为指向llvm-config
可执行文件的路径。 - 将
LIBCLANG_INCLUDE_PATH
设置为指向 Clang 的包含目录(<clang 安装目录>/clang/include/
)
构建 clang(Linux 和 macOS)
这将需要 20GB 的磁盘空间和 16GB 的 RAM。此方法创建静态二进制文件,可以轻松分发。
- 安装 cmake、subversion、build-essential、libffi-dev、libncursesw5-dev
curl -LOhttp://releases.llvm.org/5.0.2/llvm-5.0.2.src.tar.xz
tarxf llvm-5.0.2.src.tar.xz
curl -LOhttp://releases.llvm.org/5.0.2/cfe-5.0.2.src.tar.xz
tarxf cfe-5.0.2.src.tar.xz
mv cfe-5.0.2.src llvm-5.0.2.src/tools/clang
cdllvm-5.0.2.src
mkdir build;cd build
cmake-G"Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$HOME/llvm-5-c3-DLIBCLANG_BUILD_STATIC=ON -DLLVM_BUILD_LLVM_DYLIB=OFF -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE=MinSizeRel-DLLVM_POLLY_BUILD=OFF -DLLVM_ENABLE_LIBCXX=ON -DCMAKE_BUILD_TYPE=Release-DLLVM_BUILD_RUNTIME=OFF -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_ENABLE_LIBEDIT=OFF -DLLVM_ENABLE_ZLIB=OFF -DLLVM_ENABLE_FFI=OFF ..
make -j8; makeinstall
- 小憩一会儿。
cp lib/libclang.a"$HOME/llvm-5-c3/lib/"
- 设置以下变量。请注意,您每次编译时都需要设置它们,因此请将它们添加到您的 bashrc 或创建一个脚本并运行它。
export LIBCLANG_INCLUDE_PATH="$HOME/llvm-5-c3/tools/clang/include/$HOME/llvm-5-c3/include/"
export LIBCLANG_STATIC_PATH="$HOME/llvm-5-c3/lib/"
export LLVM_CONFIG_PATH="$HOME/llvm-5-c3/bin/llvm-config"
依赖关系
约215-445KB