gpt4 book ai didi

gcc - 使用特定的 gcc 工具链从源代码构建 clang

转载 作者:行者123 更新时间:2023-12-05 02:17:29 24 4
gpt4 key购买 nike

我正在从源代码构建 clang,但使用的是不在正常位置的 gcc 7.2 构建。我希望生成的 clang++ 二进制文件默认使用此工具链。我尝试这样做:

$ export GCC_PREFIX=/path/to/gcc/7.2
$ mkdir -p build
$ cd build
$ cmake -G Ninja -DCMAKE_C_COMPILER=${GCC_PREFIX}/bin/gcc \
-DCMAKE_CXX_COMPILER=${GCC_PREFIX}/bin/g++ \
-DCMAKE_BUILD_TYPE=RelWithDebInfo -DLLVM_TARGETS_TO_BUILD=X86 ..

但是生成的构建只是在 /usr/include/c++/4.8.5 中查找标准库包含而不是 /path/to/gcc/7.2/include就像我想要的那样(并且,正如路径所暗示的那样,4.8.5 有点旧)。有没有一种方法可以构建 clang,使得生成的二进制文件将搜索我想要的包含目录的路径?

请注意,我知道我使用 --gcc-toolchain=${GCC_PREFIX} 运行生成的二进制文件。这样可行。我想做的是将其构建到二进制文件中,这样我就不必每次都输入它。

最佳答案

刚找到这个。执行此操作的正确方法是提供 GCC_INSTALL_PREFIX:

$ cmake -G Ninja -DCMAKE_C_COMPILER=${GCC_PREFIX}/bin/gcc \
-DCMAKE_CXX_COMPILER=${GCC_PREFIX}/bin/g++ \

-DGCC_INSTALL_PREFIX=${GCC_PREFIX} \

-DCMAKE_BUILD_TYPE=RelWithDebInfo -DLLVM_TARGETS_TO_BUILD=X86 ..

这样做是对的。生成的 clang 二进制文件的行为就像您根据需要提供了 --gcc-toolchain=${GCC_PREFIX} 一样。

关于gcc - 使用特定的 gcc 工具链从源代码构建 clang,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47734094/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com