diff options
Diffstat (limited to 'chapter8/gcc.sh')
-rw-r--r-- | chapter8/gcc.sh | 33 |
1 files changed, 16 insertions, 17 deletions
diff --git a/chapter8/gcc.sh b/chapter8/gcc.sh index 2eb8329..85030d9 100644 --- a/chapter8/gcc.sh +++ b/chapter8/gcc.sh @@ -1,5 +1,4 @@ #!/bin/bash -set -e case $(uname -m) in x86_64) @@ -16,32 +15,32 @@ cd build || exit 1 --enable-languages=c,c++ \ --disable-multilib \ --disable-bootstrap \ - --with-system-zlib + --with-system-zlib && -make +make && -make -j1 install -rm -rf /usr/lib/gcc/"$(gcc -dumpmachine)"/"${VERSION}"/include-fixed/bits/ +make -j1 install && +rm -rf /usr/lib/gcc/"$(gcc -dumpmachine)"/"${VERSION}"/include-fixed/bits/ && chown -v -R root:root \ - /usr/lib/gcc/*linux-gnu/"${VERSION}"/include{,-fixed} + /usr/lib/gcc/*linux-gnu/"${VERSION}"/include{,-fixed} && -ln -sv ../usr/bin/cpp /lib +ln -sv ../usr/bin/cpp /lib && ln -sfv ../../libexec/gcc/"$(gcc -dumpmachine)"/"${VERSION}"/liblto_plugin.so \ - /usr/lib/bfd-plugins/ + /usr/lib/bfd-plugins/ && echo 'int main(){}' > dummy.c -cc dummy.c -v -Wl,--verbose &> dummy.log -readelf -l a.out | grep ': /lib' +cc dummy.c -v -Wl,--verbose &> dummy.log && +readelf -l a.out | grep ': /lib' && -grep -o '/usr/lib.*/crt[1in].*succeeded' dummy.log -grep -B4 '^ /usr/include' dummy.log -grep 'SEARCH.*/usr/lib' dummy.log |sed 's|; |\n|g' -grep "/lib.*/libc.so.6 " dummy.log -grep found dummy.log +grep -o '/usr/lib.*/crt[1in].*succeeded' dummy.log && +grep -B4 '^ /usr/include' dummy.log && +grep 'SEARCH.*/usr/lib' dummy.log |sed 's|; |\n|g' && +grep "/lib.*/libc.so.6 " dummy.log && +grep found dummy.log && -rm -v dummy.c a.out dummy.log +rm -v dummy.c a.out dummy.log && -mkdir -pv /usr/share/gdb/auto-load/usr/lib +mkdir -pv /usr/share/gdb/auto-load/usr/lib && mv -v /usr/lib/*gdb.py /usr/share/gdb/auto-load/usr/lib |