GnuTLS 2.7.2 fails to build with -Wl,--as-needed in LDFLAGS

Arfrever Frehtes Taifersar Arahesis arfrever.fta at gmail.com
Sun Nov 23 00:18:43 CET 2008


GnuTLS 2.7.2 fails to build with -Wl,--as-needed in LDFLAGS:

i686-pc-linux-gnu-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I..  -I./../gl -I./../gl -I./../lib/includes -I./../lib/includes -I./../libextra/includes -I./cfg  -Wall -W -Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs -Wunused -Wunknown-pragmas -Wstrict-aliasing -Wfloat-equal -Wdeclaration-after-statement -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wmissing-noreturn -Wmissing-format-attribute -Wpacked -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wlong-long -Wvolatile-register-var -Wdisabled-optimization -Wstack-protector -Woverlength-strings -Wno-missing-field-initializers -Wno-sign-compare -Wno-pointer-sign -Wno-unused-parameter -fdiagnostics-show-option -march=athlon64 -pipe -O3 -MT certtool.o -MD -MP -MF .deps/certtool.Tpo -c -o certtool.o certtool.c
mv -f .deps/certtool.Tpo .deps/certtool.Po
i686-pc-linux-gnu-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I..  -I./../gl -I./../gl -I./../lib/includes -I./../lib/includes -I./../libextra/includes -I./cfg  -Wall -W -Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs -Wunused -Wunknown-pragmas -Wstrict-aliasing -Wfloat-equal -Wdeclaration-after-statement -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wmissing-noreturn -Wmissing-format-attribute -Wpacked -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wlong-long -Wvolatile-register-var -Wdisabled-optimization -Wstack-protector -Woverlength-strings -Wno-missing-field-initializers -Wno-sign-compare -Wno-pointer-sign -Wno-unused-parameter -fdiagnostics-show-option -march=athlon64 -pipe -O3 -MT prime.o -MD -MP -MF .deps/prime.Tpo -c -o prime.o prime.c
mv -f .deps/prime.Tpo .deps/prime.Po
/bin/sh ../libtool --tag=CC   --mode=link i686-pc-linux-gnu-gcc -std=gnu99 -Wall -W -Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs -Wunused -Wunknown-pragmas -Wstrict-aliasing -Wfloat-equal -Wdeclaration-after-statement -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wmissing-noreturn -Wmissing-format-attribute -Wpacked -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wlong-long -Wvolatile-register-var -Wdisabled-optimization -Wstack-protector -Woverlength-strings -Wno-missing-field-initializers -Wno-sign-compare -Wno-pointer-sign -Wno-unused-parameter -fdiagnostics-show-option -march=athlon64 -pipe -O3  -Wl,-O1,--as-needed,--gc-sections,--hash-style=gnu,--sort-common -o certtool certtool.o prime.o ../lib/libgnutls.la ../libextra/libgnutls-extra.la ../gl/libgnu.la ../lib/gl/liblgnu.la -L/usr/lib -lreadline libcmd-certtool.la  libcfg.la
libtool: link: i686-pc-linux-gnu-gcc -std=gnu99 -Wall -W -Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs -Wunused -Wunknown-pragmas -Wstrict-aliasing -Wfloat-equal -Wdeclaration-after-statement -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wmissing-noreturn -Wmissing-format-attribute -Wpacked -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wlong-long -Wvolatile-register-var -Wdisabled-optimization -Wstack-protector -Woverlength-strings -Wno-missing-field-initializers -Wno-sign-compare -Wno-pointer-sign -Wno-unused-parameter -fdiagnostics-show-option -march=athlon64 -pipe -O3 -Wl,-O1 -Wl,--as-needed -Wl,--gc-sections -Wl,--hash-style=gnu -Wl,--sort-common -o .libs/certtool certtool.o prime.o  ../lib/.libs/libgnutls.so -L/usr/lib ../libextra/.libs/libgnutls-extra.so /usr/lib/liblzo2.so /var/tmp/portage/net-libs/gnutls-2.7.2/work/gnutls-2.7.2/lib/.libs/libgnutls.so /usr/lib/libtasn1.so -lz /usr/lib/libgcrypt.so /usr/lib/libgpg-error.so ../gl/.libs/libgnu.a ../lib/gl/.libs/liblgnu.a -lreadline ./.libs/libcmd-certtool.a ./.libs/libcfg.a
./.libs/libcmd-certtool.a(libcmd_certtool_la-certtool-cfg.o): In function `read_int_with_default':
certtool-cfg.c:(.text+0x1e3): undefined reference to `readline'
collect2: ld returned 1 exit status
make[3]: *** [certtool] Error 1
make[3]: Leaving directory `/var/tmp/portage/net-libs/gnutls-2.7.2/work/gnutls-2.7.2/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/net-libs/gnutls-2.7.2/work/gnutls-2.7.2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/net-libs/gnutls-2.7.2/work/gnutls-2.7.2'
make: *** [all] Error 2


I'm attaching the patch which fixes this problem.

-- 
Arfrever Frehtes Taifersar Arahesis
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gnutls-2.7.2-as-needed.patch
Type: text/x-diff
Size: 376 bytes
Desc: not available
URL: </pipermail/attachments/20081123/25b7aabb/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
URL: </pipermail/attachments/20081123/25b7aabb/attachment.pgp>


More information about the Gnutls-devel mailing list