[llvm-dev] CMakeTestCCompiler fails (original) (raw)

Itaru Kitayama via llvm-dev llvm-dev at lists.llvm.org
Mon Feb 3 21:13:39 PST 2020


Mehdi,

On the supercomputer at Kyushu University, I see: $ cat test.c int main() { } $ clang -v test.c clang version 11.0.0 (/home/usr4/c74014i/projects/llvm-project/clang 63e65082219983f1dba4faf273bad311715da14e) Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: /home/usr4/c74014i/opt/clang/current/bin Found CUDA installation: /usr/local/cuda, version 8.0 (in-process) "/home/usr4/c74014i/opt/clang/202002040908/bin/clang-11" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -discard-value-names -main-file-name test.c -mrelocation-model static -mthread-model posix -mframe-pointer=all -fmath-errno -fno-rounding-math -masm-verbose -mconstructor-aliases -munwind-tables -target-cpu x86-64 -dwarf-column-info -fno-split-dwarf-inlining -debugger-tuning=gdb -v -resource-dir /home/usr4/c74014i/opt/clang/202002040908/lib/clang/11.0.0 -internal-isystem /usr/local/include -internal-isystem /home/usr4/c74014i/opt/clang/202002040908/lib/clang/11.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdebug-compilation-dir /home/usr4/c74014i -ferror-limit 19 -fmessage-length 0 -fgnuc-version=4.2.1 -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -faddrsig -o /tmp/test-f00510.o -x c test.c clang -cc1 version 11.0.0 based upon LLVM 11.0.0git default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/include" #include "..." search starts here: #include <...> search starts here: /usr/local/include /home/usr4/c74014i/opt/clang/202002040908/lib/clang/11.0.0/include /usr/include End of search list. "/usr/bin/ld" --hash-style=gnu --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o a.out /lib/../lib64/crt1.o /lib/../lib64/crti.o crtbegin.o -L/lib/../lib64 -L/usr/lib/../lib64 -L/home/usr4/c74014i/opt/clang/202002040908/bin/../lib -L/lib -L/usr/lib -L/home/usr4/c74014i/opt/clang/current/lib -L. /tmp/test-f00510.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed crtend.o /lib/../lib64/crtn.o /usr/bin/ld: cannot find crtbegin.o: No such file or directory /usr/bin/ld: cannot find -lgcc /usr/bin/ld: cannot find -lgcc_s clang-11: error: linker command failed with exit code 1 (use -v to see invocation)

On Tue, Feb 4, 2020 at 2:07 PM Mehdi AMINI <joker.eph at gmail.com> wrote:

On Mon, Feb 3, 2020 at 4:33 PM Itaru Kitayama via llvm-dev <_ _llvm-dev at lists.llvm.org> wrote:

Trunk clang does not pass CMake C Compiler test like below:

CMake Error at /home/usr4/c74014i/opt/cmake-3.16.3-Linux-x8664/share/cmake-3.16/Modules/CMakeTestCCompiler.cmake:60 (message): The C compiler "/home/usr4/c74014i/opt/clang/current/bin/clang" is not able to compile a simple test program. It fails with the following output: Change Dir: /home/usr4/c74014i/work/build/202002040929/CMakeFiles/CMakeTmp Run Build Command(s):/home/usr4/c74014i/opt/ninja/bin/ninja cmTC35cb3 && [1/2] Building C object CMakeFiles/cmTC35cb3.dir/testCCompiler.c.o [2/2] Linking C executable cmTC35cb3 FAILED: cmTC35cb3 : && /home/usr4/c74014i/opt/clang/current/bin/clang CMakeFiles/cmTC35cb3.dir/testCCompiler.c.o -o cmTC35cb3 && : /usr/bin/ld: cannot find crtbegin.o: No such file or directory /usr/bin/ld: cannot find -lgcc /usr/bin/ld: cannot find -lgccs clang-11: error: linker command failed with exit code 1 (use -v to see invocation) ninja: build stopped: subcommand failed.

CMake will not be able to correctly generate this project. Call Stack (most recent call first): CMakeLists.txt:49 (project) My configuration is shown below: cmake -G Ninja -DBUILDSHAREDLIBS=ON -DLLVMPARALLELLINKJOBS=2 -DLLVMENABLELLD=ON -DLLVMENABLELIBCXX=OFF -DCMAKEBUILDTYPE=Release -DGCCINSTALLPREFIX=/pathto/gcc-7.5.0/ -DLIBOMPTARGETENABLEDEBUG=ON -DCMAKEINSTALLPREFIX=$HOME/opt/clang/${today} -DCMAKECCOMPILER=clang -DCMAKECFLAGS="" -DCMAKECXXCOMPILER=clang++ -DCMAKECXXFLAGS="" -DLLVMENABLEPROJECTS="clang;openmp;lld;libcxx;libcxxabi" -DCLANGOPENMPNVPTXDEFAULTARCH=sm60 -DLIBOMPTARGETNVPTXCOMPUTECAPABILITIES=60 -DLLVMTARGETSTOBUILD=all $HOME/projects/llvm-project/llvm Before running cmake, are you able to compile a trivial C program by invoking clang test.c ? (create test.c with an empty main function first). If not then your clang install is just not working and I'd start by looking into this. Running clang -v test.c will display a bunch of information about what toolchain your clang driver found and what is it passing to the linker invocation. -- Mehdi -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200204/7ead4a7e/attachment.html>



More information about the llvm-dev mailing list