Bug#556378: Debian bug #556378 and without-dlsym
On 2010-02-14 13:50 +0100, Sven Joachim wrote:
> It is not quite that bad as doubling the number of builds since some of
> them are already done with --without-gpm. Here is a patch that adds two
> new build targets and installs the resulting *.a files directly into
> libncurses{w,}5-dev:
> [...]
> +$(objdir-static)/config.status: $(QUILT_STAMPFN)
> + test -d $(objdir-static) || mkdir $(objdir-static)
> + cd $(objdir-static) && CFLAGS="$(CFLAGS)" $(srcdir)/configure \
> + $(CONFARGS) \
> + --without-shared
> + --without-dlsym
> + --with-install-prefix=$(fulltempdir) \
> + --enable-overwrite
> +
Sorry, that is of course broken because of missing backslashes. But
when I added them, I got undefined references at the linking stage:
,----
| gcc -O2 -g --param max-inline-insns-single=1200 -o bs ../objects/bs.o -I../test -I/usr/local/src/deb-src/ncurses/ncurses/test -DHAVE_CONFIG_H -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG -I. -I../include -I/usr/local/src/deb-src/ncurses/ncurses/test/../include -O2 -g --param max-inline-insns-single=1200 `echo "-static -L../lib -lform -lmenu -lpanel -lncurses -dynamic " | sed -e 's/-lform.*-lpanel[^ ]*//'` -lutil -lm
| ../lib/libncurses.a(lib_mouse.o): In function `enable_gpm_mouse':
| /usr/local/src/deb-src/ncurses/ncurses/ncurses/base/lib_mouse.c:476: undefined reference to `Gpm_Close'
| /usr/local/src/deb-src/ncurses/ncurses/ncurses/base/lib_mouse.c:467: undefined reference to `Gpm_Open'
| ../lib/libncurses.a(lib_mouse.o): In function `initialize_mousetype':
| /usr/local/src/deb-src/ncurses/ncurses/ncurses/base/lib_mouse.c:515: undefined reference to `gpm_fd'
| ../lib/libncurses.a(lib_mouse.o): In function `mouse_activate':
| /usr/local/src/deb-src/ncurses/ncurses/ncurses/base/lib_mouse.c:967: undefined reference to `gpm_fd'
| ../lib/libncurses.a(lib_mouse.o): In function `_nc_mouse_event':
| /usr/local/src/deb-src/ncurses/ncurses/ncurses/base/lib_mouse.c:714: undefined reference to `Gpm_GetEvent'
`----
Obviously '-lgpm' is missing at the end of the gcc command line. I would
expect configure to add it when building "--with-gpm --without-dlsym".
Here are the gpm-related messages it prints:
,----
| checking if you want to link with the GPM mouse library... yes
| checking for gpm.h... yes
| checking for Gpm_Open in -lgpm... yes
| checking if you want to load GPM dynamically... no
| checking for Gpm_Wgetch in -lgpm... yes
| checking if GPM is weakly bound to curses library... yes
`----
Sven
Reply to: