Summary: | net-irc/inspircd-3.16.1 - [clang] A suitable C++ compiler could not be detected on your system! | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Toralf Förster <toralf> |
Component: | Current packages | Assignee: | Wade Cline <wadecline> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | toralf, wadecline |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
emerge-info.txt
emerge-history.txt.xz environment etc.clang.tar.xz etc.portage.tar.xz net-irc:inspircd-3.16.1:20231209-025425.log qlist-info.txt.xz temp.tar.xz |
Description
Toralf Förster
![]() Created attachment 878540 [details]
emerge-info.txt
Created attachment 878541 [details]
emerge-history.txt.xz
Created attachment 878542 [details]
environment
Created attachment 878543 [details]
etc.clang.tar.xz
Created attachment 878544 [details]
etc.portage.tar.xz
Created attachment 878545 [details] net-irc:inspircd-3.16.1:20231209-025425.log Created attachment 878546 [details]
qlist-info.txt.xz
Created attachment 878547 [details]
temp.tar.xz
Hmm. Not really sure how to triage this one. I filed a bug report upstream: https://github.com/inspircd/inspircd/issues/2070 In the meantime, I don't currently have a clang-based build environment; is there a way to get access to an environment where I can reproduce this issue? The configure breaks at ``` "/usr/bin/x86_64-pc-linux-gnu-ld.bfd" -pie --hash-style=gnu --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o a.out /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/13 -L/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/lib -L/lib -L/usr/lib -z relro -z now -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64/crtn.o /usr/bin/x86_64-pc-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64/Scrt1.o: in function `_start': (.text+0x1b): undefined reference to `main' ``` It's trying to use gcc stuff here. Full log: ``` >>> Emerging (1 of 1) net-irc/inspircd-3.16.1::gentoo * inspircd-3.16.1.tar.gz BLAKE2B SHA512 size ;-) ... [ ok ] * inspircd-3.16.1-fix-build-paths.patch.bz2 BLAKE2B SHA512 size ;-) ... [ ok ] >>> Unpacking source... >>> Unpacking inspircd-3.16.1.tar.gz to /var/tmp/portage/net-irc/inspircd-3.16.1/work >>> Unpacking inspircd-3.16.1-fix-build-paths.patch.bz2 to /var/tmp/portage/net-irc/inspircd-3.16.1/work >>> Source unpacked in /var/tmp/portage/net-irc/inspircd-3.16.1/work >>> Preparing source in /var/tmp/portage/net-irc/inspircd-3.16.1/work/inspircd-3.16.1 ... * Applying inspircd-3.16.1-fix-build-paths.patch ... [ ok ] >>> Source prepared. >>> Configuring source in /var/tmp/portage/net-irc/inspircd-3.16.1/work/inspircd-3.16.1 ... Enabling the regex_pcre module ... Enabling the ssl_openssl module ... argon2 = disabled geo_maxmind = disabled ldap = disabled mysql = disabled pgsql = disabled regex_pcre = enabled regex_pcre2 = disabled regex_posix = disabled regex_re2 = disabled regex_stdlib = disabled regex_tre = disabled sqlite3 = disabled ssl_gnutls = disabled ssl_mbedtls = disabled ssl_openssl = enabled sslrehashsignal = disabled Remember: YOU are responsible for making sure any libraries needed have been installed! Configuring InspIRCd 3.16.1 on Linux 6.6.4-gentoo x86_64. Checking whether /var/tmp/portage/net-irc/inspircd-3.16.1/work/inspircd-3.16.1 is writable ... yes clang version 17.0.6 Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/lib/llvm/17/bin Configuration file: /etc/clang/x86_64-pc-linux-gnu-clang++.cfg System configuration file directory: /etc/clang Selected GCC installation: /usr/lib/gcc/x86_64-pc-linux-gnu/13 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 "/usr/bin/x86_64-pc-linux-gnu-ld.bfd" -pie --hash-style=gnu --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o a.out /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/13/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/13 -L/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/lib -L/lib -L/usr/lib -z relro -z now -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/13/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64/crtn.o /usr/bin/x86_64-pc-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../lib64/Scrt1.o: in function `_start': (.text+0x1b): undefined reference to `main' clang++: error: linker command failed with exit code 1 (use -v to see invocation) Checking whether `clang++ -v` is available ... no A suitable C++ compiler could not be detected on your system! Set the CXX environment variable to the path to a C++ compiler binary if this is incorrect. >>> Source configured. >>> Compiling source in /var/tmp/portage/net-irc/inspircd-3.16.1/work/inspircd-3.16.1 ... make -j2 -s 'LDFLAGS=-Wl,-O1 -Wl,--as-needed' CXXFLAGS= INSPIRCD_VERBOSE=1 make: *** No targets specified and no makefile found. Stop. * ERROR: net-irc/inspircd-3.16.1::gentoo failed (compile phase): * emake failed * * If you need support, post the output of `emerge --info '=net-irc/inspircd-3.16.1::gentoo'`, * the complete build log and the output of `emerge -pqv '=net-irc/inspircd-3.16.1::gentoo'`. * The complete build log is located at '/var/tmp/portage/net-irc/inspircd-3.16.1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-irc/inspircd-3.16.1/temp/environment'. * Working directory: '/var/tmp/portage/net-irc/inspircd-3.16.1/work/inspircd-3.16.1' * S: '/var/tmp/portage/net-irc/inspircd-3.16.1/work/inspircd-3.16.1' ``` I provided our project with a fixing attempt at https://github.com/inspircd/inspircd/pull/2071 Ultimatively, clang++ does not handle -v like g++ does. It's safer to use the long option --verbose. I believe this is solved in 4.1.0. |