Kai Luo via llvm-dev
2021-Nov-23 05:02 UTC
[llvm-dev] [External] Re: How can I build LLVM with my gcc toolchain exactly
You should check multilib support on your debian system. I don't think gcc has `sys/cdefs.h` packaged. On Tue, Nov 23, 2021 at 11:14 AM 刘可 via llvm-dev <llvm-dev at lists.llvm.org> wrote:> > Thanks for your reply! But it still does not work. > > Host environment:debian9 gcc6.3 > My toolchain: gcc8.3 > > 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 -DGCC_INSTALL_PREFIX=/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830 -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/ld-linux-x86-64.so.2 -L/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64/ld-linux-x86-64.so.2" ../llvm > > Info: > [99/302] Building C object CMakeFiles/clang_rt.builtins-i386.dir/floatsidf.c.o > FAILED: CMakeFiles/clang_rt.builtins-i386.dir/floatsidf.c.o > /home/liuke.gehry/llvm/llvm-project/build_13_release/./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/floatsidf.c.o -MF CMakeFiles/clang_rt.builtins-i386.dir/floatsidf.c.o.d -o CMakeFiles/clang_rt.builtins-i386.dir/floatsidf.c.o -c /home/liuke.gehry/llvm/llvm-project/compiler-rt/lib/builtins/floatsidf.c > In file included from /home/liuke.gehry/llvm/llvm-project/compiler-rt/lib/builtins/floatsidf.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_13_release/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 <sys/cdefs.h> > ^~~~~~~~~~~~~ > 1 error generated. > > It still includes system headers from "/usr/include". > On Mon, Nov 22, 2021, 21:31 <nemanja.i.ibm at gmail.com> wrote: > This is just a guess as you haven't included the full invocation or output of the failing command, but perhaps you need -DGCC_INSTALL_PREFIX=/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830 > > On Fri, Nov 19, 2021 at 8:38 PM 刘可 via llvm-dev <llvm-dev at lists.llvm.org> wrote: >> >> Hi, I'm from ByteDance. >> I was confused when I built LLVM with gcc toolchain. >> >> ==================================================================>> Here is my first 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_FLAGS="-Wl,-rpath /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 -Wl,-dynamic-linker /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64/ld-linux-x86-64.so.2 -I/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-494/sysroot/usr/include" \ >> ../llvm >> >> result: >> /usr/include/features.h:364:12: fatal error: 'sys/cdefs.h' file not found. >> ==================================================================>> >> ==================================================================>> I tried to solve it by ’-I‘. But it failed. >> >> Here is my second 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_FLAGS="-Wl,-rpath /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 -Wl,-dynamic-linker /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64/ld-linux-x86-64.so.2 -I/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-494/sysroot/usr/include" \ >> ../llvm >> >> result: >> /usr/include/features.h:364:12: fatal error: 'sys/cdefs.h' file not found. >> $ ls /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/usr/include/sys/cdefs.h >> toolchain/x86_64-x86_64-gcc-830/sysroot/usr/include/sys/cdefs.h >> >> 'sys/cdefs.h' exists in gcc toolchain, >> ==================================================================>> Looking forward to your reply. Thanks! >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
刘可 via llvm-dev
2021-Nov-30 02:14 UTC
[llvm-dev] [External] Re: How can I build LLVM with my gcc toolchain exactly
I don't install 'multilib' in my debian system, that's why I want to specify my gcc8 toolchain. Actually, I want to build llvm13 with gcc8 toolchain instead of a host environment. What should be my correct steps? On Tue, Nov 23, 2021, 13:02 <gluokai at gmail.com> wrote: You should check multilib support on your debian system. I don't think gcc has `sys/cdefs.h` packaged. On Tue, Nov 23, 2021 at 11:14 AM 刘可 via llvm-dev wrote: > > Thanks for your reply! But it still does not work. > > Host environment:debian9 gcc6.3 > My toolchain: gcc8.3 > > 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 -DGCC_INSTALL_PREFIX=/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830 -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/ ld-linux-x86-64.so.2 -L/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64/ ld-linux-x86-64.so.2" ../llvm > > Info: > [99/302] Building C object CMakeFiles/clang_rt.builtins-i386.dir/floatsidf.c.o > FAILED: CMakeFiles/clang_rt.builtins-i386.dir/floatsidf.c.o > /home/liuke.gehry/llvm/llvm-project/build_13_release/./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/floatsidf.c.o -MF CMakeFiles/clang_rt.builtins-i386.dir/floatsidf.c.o.d -o CMakeFiles/clang_rt.builtins-i386.dir/floatsidf.c.o -c /home/liuke.gehry/llvm/llvm-project/compiler-rt/lib/builtins/floatsidf.c > In file included from /home/liuke.gehry/llvm/llvm-project/compiler-rt/lib/builtins/floatsidf.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_13_release/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. > > It still includes system headers from "/usr/include". > On Mon, Nov 22, 2021, 21:31 wrote: > This is just a guess as you haven't included the full invocation or output of the failing command, but perhaps you need -DGCC_INSTALL_PREFIX=/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830 > > On Fri, Nov 19, 2021 at 8:38 PM 刘可 via llvm-dev wrote: >> >> Hi, I'm from ByteDance. >> I was confused when I built LLVM with gcc toolchain. >> >> =================================================================== >> Here is my first 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_FLAGS="-Wl,-rpath /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 -Wl,-dynamic-linker /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64/ ld-linux-x86-64.so.2 -I/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-494/sysroot/usr/include" \>> ../llvm >> >> result: >> /usr/include/features.h:364:12: fatal error:'sys/cdefs.h' file not found. >> =================================================================== >> >> =================================================================== >> I tried to solve it by ’-I‘. But it failed. >> >> Here is my second 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_FLAGS="-Wl,-rpath /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 -Wl,-dynamic-linker /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/lib64/ ld-linux-x86-64.so.2 -I/home/liuke.gehry/toolchain/x86_64-x86_64-gcc-494/sysroot/usr/include" \>> ../llvm >> >> result: >> /usr/include/features.h:364:12: fatal error:'sys/cdefs.h' file not found. >> $ ls /home/liuke.gehry/toolchain/x86_64-x86_64-gcc-830/sysroot/usr/include/sys/cdefs.h>> toolchain/x86_64-x86_64-gcc-830/sysroot/usr/include/sys/cdefs.h >> >>'sys/cdefs.h' exists in gcc toolchain, >> =================================================================== >> Looking forward to your reply. Thanks! >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20211129/8fed97f1/attachment.html>