Bk6.6Ch6.9 glibc `__stack_chk_guard' work around.

x2164 at lycos.com x2164 at lycos.com
Mon Mar 29 21:05:17 PDT 2010


     Hi,

     This is the work around i'm using.

     I don't know if it will help on x86_64.

     Assuming your compilation stopped at the line 'linking'
     object files to produce 'nscd':

          Paste up the 'linking' line that failed but
          include -lssp as an option.  I'll add the line
          i used at end of this letter. Its editor
          friendly, you'll probably need to adjust the
          directory paths to coincide with your build
          directory.  I put it in a file and executed
          it as a script in the glibc-build/nscd directory.

          For me, this executed correctly and left 'nscd'
          executable in glibc-build/nscd.

          Move up to glibc-build and re-started 'make'
          which finished compilation with no errors.

          Ran "make -k check 2>&1 | tee glibc-check-log"
          which produced only the 'posix/annexc' error.

          Dropped out of chroot and re-booted. While
          /mnt/lfs was still just a normal partition i
          backed it up.

          Performed mountings and re-entered chroot and
          installed the glibc-2.11.1 from Bk.6.6_Ch.6.9.


     After completing all the steps in Ch.6.9 i continued on.

     I followed the book pretty much to the letter.

     Once i completed Ch.6.16 with the install of Gcc-4.4.3
     i returned to Ch.6.9 to re-compile Glibc-2.11.1.

     This time Glibc-2.11.1 compiled to completion with no
     errors and check'ing resulted in only the 'posix/annexc'
     error.

     After again backing up /mnt/lfs i returned to chroot
     and installed this latest compilation of Glibc-2.11.1.

     At this point i resumed compiling at Bk.6.6_Ch.6.17, Sed,
     and have so far completed through Ch.6.59, Vim, without
     errors.

     Of course YMMV.


     pete x2164



************ The linking line follows.***********


gcc -pie -Wl,-O1 -nostdlib -nostartfiles  -lssp \
-o /scratch/glibc-build/nscd/nscd \
 -Wl,-dynamic-linker=/lib/ld-linux.so.2 \
  -Wl,-z,combreloc -Wl,-z,relro \
 -Wl,-z,now -Wl,--hash-style=both \
/scratch/glibc-build/csu/Scrt1.o \
 /scratch/glibc-build/csu/crti.o \
`gcc --print-file-name=crtbeginS.o` \
/scratch/glibc-build/nscd/nscd.o \
/scratch/glibc-build/nscd/connections.o \
/scratch/glibc-build/nscd/pwdcache.o \
 /scratch/glibc-build/nscd/getpwnam_r.o \
/scratch/glibc-build/nscd/getpwuid_r.o \
/scratch/glibc-build/nscd/grpcache.o \
/scratch/glibc-build/nscd/getgrnam_r.o \
/scratch/glibc-build/nscd/getgrgid_r.o \
/scratch/glibc-build/nscd/hstcache.o \
 /scratch/glibc-build/nscd/gethstbyad_r.o \
/scratch/glibc-build/nscd/gethstbynm3_r.o \
 /scratch/glibc-build/nscd/getsrvbynm_r.o \
/scratch/glibc-build/nscd/getsrvbypt_r.o \
 /scratch/glibc-build/nscd/servicescache.o \
/scratch/glibc-build/nscd/dbg_log.o \
 /scratch/glibc-build/nscd/nscd_conf.o \
/scratch/glibc-build/nscd/nscd_stat.o \
 /scratch/glibc-build/nscd/cache.o \
/scratch/glibc-build/nscd/mem.o \
 /scratch/glibc-build/nscd/nscd_setup_thread.o \
/scratch/glibc-build/nscd/xmalloc.o \
 /scratch/glibc-build/nscd/xstrdup.o \
/scratch/glibc-build/nscd/aicache.o \
 /scratch/glibc-build/nscd/initgrcache.o \
/scratch/glibc-build/nscd/gai.o \
 /scratch/glibc-build/nscd/res_hconf.o \
 /scratch/glibc-build/rt/librt.so \
 /scratch/glibc-build/nptl/libpthread_nonshared.a \
 /scratch/glibc-build/nptl/libpthread.so \
 /scratch/glibc-build/nis/libnsl.so \
-Wl,-rpath-link=/scratch/glibc-build:\
/scratch/glibc-build/math:/scratch/glibc-build/elf:\
/scratch/glibc-build/dlfcn:/scratch/glibc-build/nss:\
/scratch/glibc-build/nis:/scratch/glibc-build/rt:\
/scratch/glibc-build/resolv:\
/scratch/glibc-build/crypt:/scratch/glibc-build/nptl \
 /scratch/glibc-build/libc.so.6 \
 /scratch/glibc-build/libc_nonshared.a \
 -lgcc -Wl,--as-needed -lgcc_s \
 -Wl,--no-as-needed \
 `gcc --print-file-name=crtendS.o` \
 /scratch/glibc-build/csu/crtn.o






More information about the lfs-support mailing list