-ldevmapper /usr/lib/libpopt.a mkdir .libs i686-pc-linux-gnu-gcc -O2 -march=athlon-xp -fomit-frame-pointer -pipe -o cryptsetup cryptsetup.o setup.o utils.o backends.o libdevmapper.o gcrypt.o /usr/lib/libgcrypt.a /usr/lib/libgpg-error.a -ldevmapper /usr/lib/libpopt.a /usr/lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../i686-pc-linux-gnu/bin/ld: warning: creating a DT_TEXTREL in object. make[2]: Leaving directory `/var/tmp/portage/cryptsetup-0.1-r2/work/cryptsetup-0.1/src' Making all in po Given it is desireable for libgcypt to be staticly linked - the static libgcrypt library should be compiled with -fPIC. scanelf -aT /bin/cryptsetup TYPE PAX STK/REL/PTL TEXTREL RPATH NEEDED INTERP BIND TEXTRELS FILE TEXTREL cryptsetup: (NULL: fake?) [0x42EDC] in _gcry_rndlinux_gather_random [0x36A70] ..... ..... TEXTREL cryptsetup: free [0x45688] in _gcry_rndlinux_gather_random [0x36A70] TEXTREL cryptsetup: free [0x45EF3] in _gcry_rndlinux_gather_random ET_DYN ---xe- RWX R-- RW- TEXTREL - libdevmapper.so.1.01,libc.so.6 /lib/ld-linux.so.2 NOW /bin/cryptsetup
Fixed in libgcrypt-1.2.1-r1 (forces --with-pic in configure) >>> Completed installing cryptsetup-0.1-r2 into /var/tmp/portage/cryptsetup-0.1-r2/image/ frog cryptsetup # scanelf -aT /var/tmp/portage/cryptsetup-0.1-r2/image/bin/cryptsetup TYPE PAX STK/REL/PTL TEXTREL RPATH BIND TEXTRELS FILE ET_EXEC ---xe- RWX --- RW- - - LAZY /var/tmp/portage/cryptsetup-0.1-r2/image/bin/cryptsetup qed - problem solved
sorry to chime in, but there's still one issue left that should be fixed: the RWE GNU_STACK segment. there're a bunch of .S files that are apparently not marked so the resulting library gets the executable stack mark, without really needing it. the quick fix is execstack -c on the .so, but best is to add the proper marking to each .S (and upstream is the best place for that).
chiming in is ok. I couldn't find any patches and don't know enough to fix it yet.
Created attachment 66576 [details, diff] fix executable GNU_STACK marking the attached patch fixes the executable GNU_STACK marking for i386/i586, the other archs would need similar patches too.
thankyou.
hopefully fixed now. Thanks again.