<html><head></head><body><div id="appVersion:飞书-4.8.1-editorVersion:0.9.6"></div><div><div style="line-height:1.68"><div style="font-family:arial,helvetica,sans-serif;color:rgb(31,35,41);line-height:1.68"><div class="" dir="auto" style="margin:4px 0px"><span class=" backgroundcolor fontweight  fontsize fontcolor " style="background-color:rgb(255,255,255);font-weight:400;font-size:13px;color:#232629">Thanks for your reply. It does work!</span></div></div></div></div><div style="list-style-position:inside" id="lark-mail-quote-163841964"><div style="list-style-position:inside"><div style="margin:12px 0px 0px;padding-left:12px;border-left:0.5px solid rgb(187,191,196)" class="adit-html-block ignore-collect adit-html-block--collapsed"><div><div id="lark-mail-quote-5ad345e75f678463156e1390fc541d97"><div style="color:rgb(187,191,196)" class="adit-html-block__attr">On Wed, Dec 1, 2021, 17:42 <<a style="white-space:pre-wrap;word-break:break-word;text-decoration:none;color:rgb(51,112,255)" href="mailto:david.spickett@linaro.org">david.spickett@linaro.org</a>> wrote:</div><div style="margin-top:8px"><div style="white-space:pre-wrap"><span>Since your default target will be 64 bit I think you can set
COMPILER_RT_DEFAULT_TARGET_ONLY and it will just build 64 bit. If you
look for that option name in compiler-rt/cmake/base-config-ix.cmake
you'll see a check for it, then if it's not set it checks flags for
both 64 and 32 bit, which is what leads to trying to build both.

if(COMPILER_RT_DEFAULT_TARGET_ONLY)
  add_default_target_arch(${COMPILER_RT_DEFAULT_TARGET_ARCH})
elseif("${COMPILER_RT_DEFAULT_TARGET_ARCH}" MATCHES "i[2-6]86|x86|amd64")
  if(NOT MSVC)
    test_target_arch(x86_64 "" "-m64")
    test_target_arch(i386 __i386__ "-m32")

I have not tested it myself but maybe that helps.

On Wed, 1 Dec 2021 at 06:29, 刘可 via llvm-dev  wrote:
>
> Hi, I got an error when I specified gcc8.3 toolchain to build LLVM13. Here is my host environment:
> Debian9
> gcc6.3
> Manully built toolchain: gcc8.3
>
> ===============================================================================================
> Here is my command:
> $ CXX=/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/bin/g++ CC=/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/bin/gcc cmake -G Ninja -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;lld;lldb;openmp" -DLLVM_ENABLE_RUNTIMES="compiler-rt;libcxx;libcxxabi;libunwind" -DLLVM_TARGETS_TO_BUILD="X86;ARM;AArch64" -DCMAKE_BUILD_TYPE=Release  -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_LINK_LLVM_DYLIB=ON -DCMAKE_CXX_LINK_FLAGS="-Wl,-rpath /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/lib64 -L/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/lib64 -Wl,-rpath /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64 -L/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64 -Wl,-dynamic-linker /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64/<a href="ld-linux-x86-64.so.2" target="_blank">ld-linux-x86-64.so.2</a> -L/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64/<a href="ld-linux-x86-64.so.2" target="_blank">ld-linux-x86-64.so.2</a>" ../llvm
> $ ninja
>
> [99/302] Building C object CMakeFiles/clang_rt.builtins-i386.dir/floatsisf.c.o
> FAILED: CMakeFiles/clang_rt.builtins-i386.dir/floatsisf.c.o
> /home/liuke.gehry/llvm/llvm-project/build_with_gcc/./bin/clang --target=x86_64-unknown-linux-gnu -DVISIBILITY_HIDDEN  -O3 -DNDEBUG    -m32 -std=c11 -fPIC -fno-builtin -fvisibility=hidden -MD -MT CMakeFiles/clang_rt.builtins-i386.dir/floatsisf.c.o -MF CMakeFiles/clang_rt.builtins-i386.dir/floatsisf.c.o.d -o CMakeFiles/clang_rt.builtins-i386.dir/floatsisf.c.o   -c /home/liuke.gehry/llvm/llvm-project/compiler-rt/lib/builtins/floatsisf.c
> In file included from /home/liuke.gehry/llvm/llvm-project/compiler-rt/lib/builtins/floatsisf.c:16:
> In file included from /home/liuke.gehry/llvm/llvm-project/compiler-rt/lib/builtins/fp_lib.h:23:
> In file included from /home/liuke.gehry/llvm/llvm-project/compiler-rt/lib/builtins/int_lib.h:93:
> In file included from /data00/home/liuke.gehry/llvm/llvm-project/build_with_gcc/lib/clang/13.0.1/include/limits.h:21:
> In file included from /usr/include/limits.h:25:
> /usr/include/features.h:364:12: fatal error: 'sys/cdefs.h' file not found
> #  include 
>            ^~~~~~~~~~~~~
> 1 error generated.
> ===============================================================================================
>
> I know I can solve it through 'apt install'. But I do not need 32-bits binary . How can I disable '-m32' when building builtins? Or is it a necessary process?
> _______________________________________________
> LLVM Developers mailing list
> <a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>
> <a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a></span></div></div></div></div></div></div></div></body></html>