https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87808
Bug ID: 87808 Summary: gcc_lib_dir is missing from libgccjit's search path Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: jit Assignee: dmalcolm at gcc dot gnu.org Reporter: doko at debian dot org Target Milestone: --- [forwarded from https://bugs.debian.org/911668] building an example from the tutorial, then removing the driver and then running it: $ ./hello ld: cannot find crtbeginS.o: No such file or directory ld: cannot find -lgcc ld: cannot find -lgcc_s libgccjit.so: error: error invoking gcc driver terminate called after throwing an instance of 'gccjit::error' Aborted (core dumped) these files are still installed but not found. However when explicitly telling libgccjit where to look at, it works: $ LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/8 ./hello hello world And an strace reveals that this standard path for an installed location is missing, however it tries to find it many other locations. access("/home/doko/bin/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/usr/local/bin/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/usr/bin/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/bin/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/usr/local/games/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/usr/games/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) getcwd("/home/doko", 4096) = 11 lstat("/home/doko/x86_64-linux-gnu-gcc-8", 0x7fff0ae9d5c0) = -1 ENOENT (No such file or directory) access("/home/doko/bin/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/usr/local/bin/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/usr/bin/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/bin/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/usr/local/games/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) access("/usr/games/x86_64-linux-gnu-gcc-8", X_OK) = -1 ENOENT (No such file or directory) getcwd("/home/doko", 4096) = 11 lstat("/home/doko/x86_64-linux-gnu-gcc-8", 0x7fff0ae9d5c0) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/8/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/8/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/8/specs", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/specs", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/8/specs", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/specs", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/gcc/x86_64-linux-gnu/specs", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/8/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/", X_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/", X_OK) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/8/lto-wrapper", 0x7fff0ae9e750) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/lto-wrapper", 0x7fff0ae9e750) = -1 ENOENT (No such file or directory) stat("../lib/gcc/lto-wrapper", 0x7fff0ae9e750) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/8/lto-wrapper", 0x7fff0ae9e750) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/lto-wrapper", 0x7fff0ae9e750) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/lto-wrapper", 0x7fff0ae9e750) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/tmp/ccL9yR72.o", O_RDWR|O_CREAT|O_EXCL, 0600) = 3 stat("../lib/gcc/x86_64-linux-gnu/8/x86_64-linux-gnu-as", 0x7fff0ae9e580) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/8/as", 0x7fff0ae9e5d0) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/x86_64-linux-gnu-as", 0x7fff0ae9e580) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/as", 0x7fff0ae9e5d0) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu-as", 0x7fff0ae9e580) = -1 ENOENT (No such file or directory) stat("../lib/gcc/as", 0x7fff0ae9e5d0) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/8/x86_64-linux-gnu-as", 0x7fff0ae9e580) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/8/as", 0x7fff0ae9e5d0) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/x86_64-linux-gnu-as", 0x7fff0ae9e580) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/as", 0x7fff0ae9e5d0) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu-as", 0x7fff0ae9e580) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/as", 0x7fff0ae9e5d0) = -1 ENOENT (No such file or directory) --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=10950, si_uid=1000, si_status=0, si_utime=0, si_stime=0} --- stat("../lib/gcc/x86_64-linux-gnu/8/collect2", 0x7fff0ae9e720) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/collect2", 0x7fff0ae9e720) = -1 ENOENT (No such file or directory) stat("../lib/gcc/collect2", 0x7fff0ae9e720) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/8/collect2", 0x7fff0ae9e720) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/collect2", 0x7fff0ae9e720) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/collect2", 0x7fff0ae9e720) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/8/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/gcc/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/8/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/8/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/gcc/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/lib/x86_64-linux-gnu/8/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/lib/x86_64-linux-gnu/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/lib/../lib/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/x86_64-linux-gnu/8/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/x86_64-linux-gnu/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/../lib/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("/lib/x86_64-linux-gnu/8/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("/lib/x86_64-linux-gnu/.", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0 stat("/lib/../lib/.", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat("/usr/lib/x86_64-linux-gnu/8/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("/usr/lib/x86_64-linux-gnu/.", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0 stat("/usr/lib/../lib/.", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat("../x86_64-linux-gnu/lib/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("../lib/.", 0x7fff0ae9e730) = -1 ENOENT (No such file or directory) stat("/lib/.", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat("/usr/lib/.", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 access("../lib/gcc/x86_64-linux-gnu/8/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/8/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/../lib/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/8/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/../lib/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/x86_64-linux-gnu/8/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/x86_64-linux-gnu/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/../lib/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/x86_64-linux-gnu/8/crti.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/x86_64-linux-gnu/crti.o", R_OK) = 0 access("../lib/gcc/x86_64-linux-gnu/8/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/8/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/../lib/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/8/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/../lib/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/x86_64-linux-gnu/8/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/x86_64-linux-gnu/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/../lib/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/x86_64-linux-gnu/8/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/x86_64-linux-gnu/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/../lib/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/crtbeginS.o", R_OK) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/8/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../lib/gcc/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/lib/x86_64-linux-gnu/8/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/lib/x86_64-linux-gnu/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/lib/../lib/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../lib/x86_64-linux-gnu/8/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../lib/x86_64-linux-gnu/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../lib/../lib/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("/lib/x86_64-linux-gnu/8/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("/lib/x86_64-linux-gnu/.", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0 stat("/lib/../lib/.", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat("/usr/lib/x86_64-linux-gnu/8/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("/usr/lib/x86_64-linux-gnu/.", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0 stat("/usr/lib/../lib/.", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat("../x86_64-linux-gnu/lib/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) stat("../lib/.", 0x7fff0ae9da00) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/8/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/8/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/../lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/8/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/../lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/x86_64-linux-gnu/8/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/x86_64-linux-gnu/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/../lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/x86_64-linux-gnu/8/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/x86_64-linux-gnu/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/../lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/8/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/8/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/../lib/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/8/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/crtendS.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/8/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/x86_64-linux-gnu/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/gcc/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/8/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/x86_64-linux-gnu/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../x86_64-linux-gnu/lib/../lib/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/8/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/x86_64-linux-gnu/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("../lib/../lib/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/x86_64-linux-gnu/8/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/x86_64-linux-gnu/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("/lib/../lib/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/x86_64-linux-gnu/8/crtn.o", R_OK) = -1 ENOENT (No such file or directory) access("/usr/lib/x86_64-linux-gnu/crtn.o", R_OK) = 0 stat("../lib/gcc/x86_64-linux-gnu/8/x86_64-linux-gnu-ld", 0x7fff0ae9d9c0) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/8/ld", 0x7fff0ae9da10) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/x86_64-linux-gnu-ld", 0x7fff0ae9d9c0) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu/ld", 0x7fff0ae9da10) = -1 ENOENT (No such file or directory) stat("../lib/gcc/x86_64-linux-gnu-ld", 0x7fff0ae9d9c0) = -1 ENOENT (No such file or directory) stat("../lib/gcc/ld", 0x7fff0ae9da10) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/8/x86_64-linux-gnu-ld", 0x7fff0ae9d9c0) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/8/ld", 0x7fff0ae9da10) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/x86_64-linux-gnu-ld", 0x7fff0ae9d9c0) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu/ld", 0x7fff0ae9da10) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/x86_64-linux-gnu-ld", 0x7fff0ae9d9c0) = -1 ENOENT (No such file or directory) stat("../x86_64-linux-gnu/bin/ld", 0x7fff0ae9da10) = -1 ENOENT (No such file or directory) ld: cannot find crtbeginS.o: No such file or directory ld: cannot find -lgcc ld: cannot find -lgcc_s