Bk6.6Ch6.9 glibc compile stopped with `__stack_chk_guard'

x2164 at lycos.com x2164 at lycos.com
Wed Mar 24 20:55:20 PDT 2010

     Hi All,

     I've reached LFS Bk6.6 Ch6.9 "Glibc-2.11.1".

     I've followed the book pretty much to the letter.

     When trying to compile Glibc-2.11.1, compilation stopped
     at the link line outputting 'nscd'.
     'make' was in the glibc-build/nscd directory.
     The error was:

          undefined reference to '__stack_chk_guard'

     'Jerry' posted a virtually identical output of 'make'
     at pastebin.com to the error output from 'make'
     that i am seeing when compilation stops.  His
     link at pastebin is:

     http://linuxfromscratch.pastebin.com/nyYhgsMq .

     Googling '__stack_chk_guard' led me to Jerry's
     pastebin post, above, and to two other links
     concerning compilation failures in the
     nscd code:



     http://sources.redhat.com/ml/libc-alpha/2005-07/msg00048.html .

     From the above two links it seems that '__stack_chk_guard'
     is found in libssp.

     It seems that libssp is suppose to be pulled in by
     the gcc option '-fstack-protector' so that '-lssp'
     shouldn't be necessary on the link line.

     Following the procedure in link for msg00046.html above
     i too was able to link 'nscd' to production of executable 'nscd'
     by cutting and pasting-up of the failed linking line into
     a script file and adding '-lssp' to the line and executing
     the script in the glibc-build/nscd directory.  

     With 'nscd' now produced i returned to the glibc-build
     directory and re-executed 'make'.  The package
     compiled to completion.

     With compilation complete i ran 'make -k check...' which
     ran to completion with only one error. The error was

     I have installed the tested glibc.

     Running 'ldd' on the installed 'nscd' executable:

     ldd /usr/sbin/nscd

        linux-gate.so.1 =>  (0xb7fd2000)
        libssp.so.0 => not found
        librt.so.1 => /lib/librt.so.1 (0xb7fc8000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7faf000)
        libnsl.so.1 => /lib/libnsl.so.1 (0xb7f97000)
        libc.so.6 => /lib/libc.so.6 (0xb7e42000)
        /lib/ld-linux.so.2 (0xb7fd3000)

     'libssp.so.0' is installed in  /tools/lib/libssp.so.0 and
     has the same installation time as /tools/bin/gcc.  All of
     the libssp* libs are installed in /tools/lib with the same
     installation time.

     Anyone got a grasp on this problem?

     pete x2164

More information about the lfs-support mailing list