Building a compiler that honors symbolic links.

xaxazak xak xaxazak@gmail.com
Thu May 7 19:37:26 GMT 2020


Here's the requested and useful info - full commands and outputs below
in case the quick info misses anything.

The setup is a bit convoluted sorry, it's a cheap initial attempt at a
script to build multiple versions of gcc and llvm. I'm using GIT
instead of SVN now, but the issue is the same.


QUICK INFO
================
build CWD: "/make/tool/gcc/build/gcc-unk-2020-05-08-06-10-20"

build configuration:
"/make/tool/gcc/git/gcc-unk-2020-05-08-06-10-20/configure
--disable-bootstrap --disable-multilib --enable-languages=c++
--prefix=/make/tool/gcc/use/unk-2020-05-08-06-10-20
--program-suffix=-unk"

-v (full output below) has one line showing the issue:
"COLLECT_LTO_WRAPPER=/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20
bin/../libexec/gcc/x86_64-pc-linux-gnu/11.0.0/lto-wrapper"

NOTE: "/make" is the symlink for to "/home/xaxazak/Fast/make" that I
don't want expanded

output of "g++-unk -E -x c++ - -v < /dev/null" contains many lines
using expanded path, eg:
"
#include <...> search starts here:
 /home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../include/c++/11.0.0
"
================


I note that the output from make ends with lines like:
"make[4]: Leaving directory
'/home/xaxazak/Fast/make/tool/gcc/build/gcc-unk-2020-05-08-06-10-20/x86_64-pc-linux-gnu/libatomic"
So perhaps the issue is that the symlinks are being expanded within make?



FULL INSTALL & COMMAND DETAILS BELOW



SETUP
=====
git clone git://gcc.gnu.org/git/gcc.git /make/tool/gcc/git/gcc
mv /make/tool/gcc/git/gcc /make/tool/gcc/git/gcc-unk-2020-05-08-06-10-20
mkdir /make/tool/gcc/build/gcc-unk-2020-05-08-06-10-20
=====



BUILD
=====
cd /make/tool/gcc/build/gcc-unk-2020-05-08-06-10-20
/make/tool/gcc/git/gcc-unk-2020-05-08-06-10-20/configure
--disable-bootstrap --disable-multilib --enable-languages=c++
--prefix=/make/tool/gcc/use/unk-2020-05-08-06-10-20
--program-suffix=-unk
make
=====



/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/g++-unk -v
=========================================================
Using built-in specs.
COLLECT_GCC=/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/g++-unk
COLLECT_LTO_WRAPPER=/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../libexec/gcc/x86_64-pc-linux-gnu/11.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with:
/make/tool/base/gcc/git/gcc-unk-2020-05-08-06-10-20/configure
--disable-bootstrap --disable-multilib --enable-languages=c++
--prefix=/make/tool/gcc/use/unk-2020-05-08-06-10-20
--program-suffix=-unk
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 11.0.0 20200507 (experimental) (GCC)
=========================================================



/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/g++-unk -E -x c++ - -v
< /dev/null
=================================================================================
Using built-in specs.
COLLECT_GCC=/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/g++-unk
Target: x86_64-pc-linux-gnu
Configured with:
/make/tool/base/gcc/git/gcc-unk-2020-05-08-06-10-20/configure
--disable-bootstrap --disable-multilib --enable-languages=c++
--prefix=/make/tool/gcc/use/unk-2020-05-08-06-10-20
--program-suffix=-unk
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 11.0.0 20200507 (experimental) (GCC)
COLLECT_GCC_OPTIONS='-E' '-v' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
 /home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../libexec/gcc/x86_64-pc-linux-gnu/11.0.0/cc1plus
-E -quiet -v -imultiarch x86_64-linux-gnu -iprefix
/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/
-D_GNU_SOURCE - -mtune=generic -march=x86-64
ignoring nonexistent directory
"/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../x86_64-pc-linux-gnu/include"
ignoring duplicate directory
"/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/../../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../include/c++/11.0.0"
ignoring duplicate directory
"/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/../../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../include/c++/11.0.0/x86_64-pc-linux-gnu"
ignoring duplicate directory
"/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/../../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../include/c++/11.0.0/backward"
ignoring duplicate directory
"/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/../../lib/gcc/x86_64-pc-linux-gnu/11.0.0/include"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring duplicate directory
"/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/../../lib/gcc/x86_64-pc-linux-gnu/11.0.0/include-fixed"
ignoring nonexistent directory
"/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/../../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../include/c++/11.0.0
 /home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../include/c++/11.0.0/x86_64-pc-linux-gnu
 /home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../include/c++/11.0.0/backward
 /home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/include
 /home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/include-fixed
 /usr/local/include
 /home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/../../include
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
# 1 "<stdin>"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 1 "<command-line>" 2
# 1 "<stdin>"
COMPILER_PATH=/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../libexec/gcc/x86_64-pc-linux-gnu/11.0.0/:/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../libexec/gcc/
LIBRARY_PATH=/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/:/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/:/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../lib64/:/lib/x86_64-linux-gnu/:/lib/../lib64/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib64/:/home/xaxazak/Fast/make/tool/gcc/use/unk-2020-05-08-06-10-20/bin/../lib/gcc/x86_64-pc-linux-gnu/11.0.0/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-E' '-v' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
=================================================================================


More information about the Gcc-help mailing list