Debian Bug report logs - #556378
libncurses5-dev: Impossible to build a program with -static

version graph

Package: libncurses5-dev; Maintainer for libncurses5-dev is Craig Small <csmall@debian.org>; Source for libncurses5-dev is src:ncurses.

Reported by: "H.-M. Junitz" <rajunitz@web.de>

Date: Sun, 15 Nov 2009 16:27:01 UTC

Severity: important

Found in version ncurses/5.7+20081213-1

Fixed in version ncurses/5.7+20100313-1

Done: Sven Joachim <svenjoac@gmx.de>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian QA Group <packages@qa.debian.org>:
Bug#556378; Package libncurses5-dev. (Sun, 15 Nov 2009 16:27:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to "H.-M. Junitz" <rajunitz@web.de>:
New Bug report received and forwarded. Copy sent to Debian QA Group <packages@qa.debian.org>. (Sun, 15 Nov 2009 16:27:04 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: "H.-M. Junitz" <rajunitz@web.de>
To: submit@bugs.debian.org
Subject: libncurses5-dev: Impossible to build a program with -static
Date: Sun, 15 Nov 2009 17:23:07 +0100
Package: libncurses5-dev
Version: 5.7+20081213-1
Severity: important

*** Please type your report below this line ***
The fault is completely independent of the kernel - or debian-version.

Building a program using libnurses of the type shared objects, *.so, runs 
without error or warnings (using -Wall). But using the static version 
produces these messages:

/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libncurses.a(lib_mouse.o): 
In function `load_gpm_library':
(.text+0x6eb): undefined reference to `dlopen'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libncurses.a(lib_mouse.o): 
In function `load_gpm_library':
(.text+0x713): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libncurses.a(lib_mouse.o): 
In function `load_gpm_library':
(.text+0x73b): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libncurses.a(lib_mouse.o): 
In function `load_gpm_library':
(.text+0x75f): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libncurses.a(lib_mouse.o): 
In function `load_gpm_library':
(.text+0x783): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libncurses.a(lib_mouse.o): 
In function `load_gpm_library':
(.text+0x7da): undefined reference to `dlclose'
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libncurses.a(lib_mouse.o): 
In function `enable_gpm_mouse':
(.text+0x832): undefined reference to `dlclose'
collect2: ld gab 1 als Ende-Status zurück

The severity is important, because you are forced to have ncurses installed on 
a computer, or the program will not run.


-- System Information:
Debian Release: 5.0.3
  APT prefers proposed-updates
  APT policy: (500, 'proposed-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.30
Locale: LANG=de_DE@euro, LC_CTYPE=de_DE@euro (charmap=ISO-8859-15)
Shell: /bin/sh linked to /bin/bash

Versions of packages libncurses5-dev depends on:
ii  libc6-dev [libc-dev]      2.7-18lenny1   GNU C Library: Development 
Librari
ii  libncurses5               5.7+20081213-1 shared libraries for terminal 
hand

libncurses5-dev recommends no packages.

libncurses5-dev suggests no packages.

-- no debconf information




Information forwarded to debian-bugs-dist@lists.debian.org, Debian QA Group <packages@qa.debian.org>:
Bug#556378; Package libncurses5-dev. (Sun, 15 Nov 2009 22:12:10 GMT) Full text and rfc822 format available.

Acknowledgement sent to Thomas Dickey <dickey@his.com>:
Extra info received and forwarded to list. Copy sent to Debian QA Group <packages@qa.debian.org>. (Sun, 15 Nov 2009 22:12:10 GMT) Full text and rfc822 format available.

Message #10 received at 556378@bugs.debian.org (full text, mbox):

From: Thomas Dickey <dickey@his.com>
To: 556378@bugs.debian.org
Cc: 556378-submitter@bugs.debian.org
Subject: Re: Bug#556378: libncurses5-dev: Impossible to build a program with -static
Date: Sun, 15 Nov 2009 16:59:53 -0500 (EST)
On Sun, 15 Nov 2009, H.-M. Junitz wrote:

> Package: libncurses5-dev
> Version: 5.7+20081213-1
> Severity: important
>
> *** Please type your report below this line ***
> The fault is completely independent of the kernel - or debian-version.
>
> Building a program using libnurses of the type shared objects, *.so, runs
> without error or warnings (using -Wall). But using the static version
> produces these messages:

ncurses has a configure option for this case, perhaps it is not used:

    --without-dlsym
        Do not use dlsym() to load GPM dynamically.

-- 
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




Message sent on to "H.-M. Junitz" <rajunitz@web.de>:
Bug#556378. (Sun, 15 Nov 2009 22:12:16 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian QA Group <packages@qa.debian.org>:
Bug#556378; Package libncurses5-dev. (Tue, 17 Nov 2009 01:27:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Thomas Dickey <dickey@his.com>:
Extra info received and forwarded to list. Copy sent to Debian QA Group <packages@qa.debian.org>. (Tue, 17 Nov 2009 01:27:05 GMT) Full text and rfc822 format available.

Message #18 received at 556378@bugs.debian.org (full text, mbox):

From: Thomas Dickey <dickey@his.com>
To: 556378@bugs.debian.org
Cc: 556378-submitter@bugs.debian.org
Subject: Re: Bug#556378: libncurses5-dev: Impossible to build a program with -static
Date: Mon, 16 Nov 2009 20:24:47 -0500 (EST)
On Sun, 15 Nov 2009, H.-M. Junitz wrote:

> Package: libncurses5-dev
> Version: 5.7+20081213-1
> Severity: important
...
> The severity is important, because you are forced to have ncurses installed on
> a computer, or the program will not run.

...the severity should be "normal", because this is a report against the
development libraries (which are optional), and does not block the most
common use of the development (shared) libraries.

-- 
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




Message sent on to "H.-M. Junitz" <rajunitz@web.de>:
Bug#556378. (Tue, 17 Nov 2009 01:27:06 GMT) Full text and rfc822 format available.

Information stored :
Bug#556378; Package libncurses5-dev. (Tue, 17 Nov 2009 13:18:09 GMT) Full text and rfc822 format available.

Acknowledgement sent to "H.-M. Junitz" <rajunitz@web.de>:
Extra info received and filed, but not forwarded. (Tue, 17 Nov 2009 13:18:10 GMT) Full text and rfc822 format available.

Message #26 received at 556378-quiet@bugs.debian.org (full text, mbox):

From: "H.-M. Junitz" <rajunitz@web.de>
To: Thomas Dickey <dickey@his.com>, 556378-quiet@bugs.debian.org
Subject: Re: Bug#556378: libncurses5-dev: Impossible to build a program with -static
Date: Tue, 17 Nov 2009 14:13:43 +0100
Thank you for the information.

So change the severity to "normal", please. I have not the intention to change 
the rules.

I choosed "important" because i.m.h.o. static AND dynamic linking should be 
possible. Maybe the  development libraries are optional: Only this package 
includes the static library. You are forced to use this package to use gcc 
with the option "-static".

Of course I have tried to download the sources and generate a static 
libncurses.a. I noticed that the result was different (concerning the size of 
the file), but it was impossible to use "-static" with the so compiled 
libncurses.a, too.

Does your information to use "--without-dlsym" concern the Makefile to use 
when compiling a libncurses.a of the sources? I ask this 
because  "--without-dlsym" is no option for gcc or ld. If the answer is yes 
and the result is a libncurses.a that doesn't produce error messages, 
wouldn't it be a good idea to change the Makefile of the package?

Trying to build the program statically I have taken a very short source 
without call of a mouse-function. So I was a bit surprised by the error 
messages pointing to function 'load_gpm_library'.
--
Hans-Martin Junitz


Am Dienstag, 17. November 2009 schrieb Thomas Dickey:
> On Sun, 15 Nov 2009, H.-M. Junitz wrote:
> > Package: libncurses5-dev
> > Version: 5.7+20081213-1
> > Severity: important
>
> ...
>
> > The severity is important, because you are forced to have ncurses
> > installed on a computer, or the program will not run.
>
> ...the severity should be "normal", because this is a report against the
> development libraries (which are optional), and does not block the most
> common use of the development (shared) libraries.






Information stored :
Bug#556378; Package libncurses5-dev. (Tue, 17 Nov 2009 23:57:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Thomas Dickey <dickey@his.com>:
Extra info received and filed, but not forwarded. (Tue, 17 Nov 2009 23:57:05 GMT) Full text and rfc822 format available.

Message #31 received at 556378-quiet@bugs.debian.org (full text, mbox):

From: Thomas Dickey <dickey@his.com>
To: "H.-M. Junitz" <rajunitz@web.de>, 556378-quiet@bugs.debian.org
Subject: Re: Bug#556378: libncurses5-dev: Impossible to build a program with -static
Date: Tue, 17 Nov 2009 18:47:55 -0500 (EST)
On Tue, 17 Nov 2009, H.-M. Junitz wrote:

> Thank you for the information.
>
> So change the severity to "normal", please. I have not the intention to change
> the rules.
>
> I choosed "important" because i.m.h.o. static AND dynamic linking should be
> possible. Maybe the  development libraries are optional: Only this package
> includes the static library. You are forced to use this package to use gcc
> with the option "-static".
>
> Of course I have tried to download the sources and generate a static
> libncurses.a. I noticed that the result was different (concerning the size of
> the file), but it was impossible to use "-static" with the so compiled
> libncurses.a, too.
>
> Does your information to use "--without-dlsym" concern the Makefile to use
> when compiling a libncurses.a of the sources? I ask this

yes, it's a configure option for ncurses, documented in the INSTALL file
in the ncurses sources.  (My initial comment was directed to the Debian
package maintainer, who probably should add that option for building the
static libraries - but the shared libraries should be built _without_ the
option).

-- 
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




Information stored :
Bug#556378; Package libncurses5-dev. (Sun, 10 Jan 2010 12:18:27 GMT) Full text and rfc822 format available.

Acknowledgement sent to Craig Small <csmall@debian.org>:
Extra info received and filed, but not forwarded. (Sun, 10 Jan 2010 12:18:27 GMT) Full text and rfc822 format available.

Message #36 received at 556378-quiet@bugs.debian.org (full text, mbox):

From: Craig Small <csmall@debian.org>
To: Thomas Dickey <dickey@his.com>
Cc: 556378-quiet@bugs.debian.org
Subject: Debian bug #556378 and without-dlsym
Date: Sun, 10 Jan 2010 23:16:07 +1100
Hello,
  I'm part of the group taking over the maintenance of ncurses packages
within Debian.  I noticed your comments at 
http://bugs.debian.org/556378 about the static libraries and configure
flags.

Currently we build the libraries using --with-shared which, I believe,
makes both the static and shared libraries.  However to use
--without-dlsym ONLY on static library build we would have the split the 
two, is that right? Something like
./configure --with-shared --without-normal ..etc...
make and install somewhere (makes shared libraries with dlsym)
./configure --without-dlsym ...etc..
make and install somewhere (makes static libraries without dlsym)

Is this what you meant by this flag? It will mean doubling the number of
builds but there are a fair few already.

 - Craig
-- 
Craig Small      GnuPG:1C1B D893 1418 2AF4 45EE  95CB C76C E5AC 12CA DFA5
http://www.enc.com.au/                             csmall at : enc.com.au
http://www.debian.org/          Debian GNU/Linux, software should be Free 




Information stored :
Bug#556378; Package libncurses5-dev. (Sun, 10 Jan 2010 15:27:17 GMT) Full text and rfc822 format available.

Acknowledgement sent to Thomas Dickey <dickey@his.com>:
Extra info received and filed, but not forwarded. (Sun, 10 Jan 2010 15:27:17 GMT) Full text and rfc822 format available.

Message #41 received at 556378-quiet@bugs.debian.org (full text, mbox):

From: Thomas Dickey <dickey@his.com>
To: Craig Small <csmall@debian.org>
Cc: 556378-quiet@bugs.debian.org
Subject: Re: Debian bug #556378 and without-dlsym
Date: Sun, 10 Jan 2010 10:25:02 -0500 (EST)
On Sun, 10 Jan 2010, Craig Small wrote:

> Hello,
>  I'm part of the group taking over the maintenance of ncurses packages
> within Debian.  I noticed your comments at
> http://bugs.debian.org/556378 about the static libraries and configure
> flags.
>
> Currently we build the libraries using --with-shared which, I believe,
> makes both the static and shared libraries.  However to use
> --without-dlsym ONLY on static library build we would have the split the
> two, is that right? Something like
> ../configure --with-shared --without-normal ..etc...
> make and install somewhere (makes shared libraries with dlsym)
> ../configure --without-dlsym ...etc..
> make and install somewhere (makes static libraries without dlsym)
>
> Is this what you meant by this flag? It will mean doubling the number of
> builds but there are a fair few already.

yes - conceivably I could have made --without-dlsym apply to the static 
libraries only, but it's a little late for existing sources.  I'll make
a note to see how complicated that would be.  For now - two builds.

-- 
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




Information forwarded to debian-bugs-dist@lists.debian.org, Debian QA Group <packages@qa.debian.org>:
Bug#556378; Package libncurses5-dev. (Sun, 14 Feb 2010 12:54:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Sven Joachim <svenjoac@gmx.de>:
Extra info received and forwarded to list. Copy sent to Debian QA Group <packages@qa.debian.org>. (Sun, 14 Feb 2010 12:54:02 GMT) Full text and rfc822 format available.

Message #46 received at 556378@bugs.debian.org (full text, mbox):

From: Sven Joachim <svenjoac@gmx.de>
To: Craig Small <csmall@debian.org>
Cc: 556378@bugs.debian.org, Thomas Dickey <dickey@his.com>
Subject: Re: Bug#556378: Debian bug #556378 and without-dlsym
Date: Sun, 14 Feb 2010 13:50:28 +0100
On 2010-01-10 13:16 +0100, Craig Small wrote:

> Hello,
>   I'm part of the group taking over the maintenance of ncurses packages
> within Debian.  I noticed your comments at 
> http://bugs.debian.org/556378 about the static libraries and configure
> flags.
>
> Currently we build the libraries using --with-shared which, I believe,
> makes both the static and shared libraries.  However to use
> --without-dlsym ONLY on static library build we would have the split the 
> two, is that right? Something like
> ./configure --with-shared --without-normal ..etc...
> make and install somewhere (makes shared libraries with dlsym)
> ./configure --without-dlsym ...etc..
> make and install somewhere (makes static libraries without dlsym)
>
> Is this what you meant by this flag? It will mean doubling the number of
> builds but there are a fair few already.

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:

--8<---------------cut here---------------start------------->8---
diff --git a/debian/libncurses5-dev.install b/debian/libncurses5-dev.install
index 37ad120..2408d16 100644
--- a/debian/libncurses5-dev.install
+++ b/debian/libncurses5-dev.install
@@ -4,10 +4,5 @@ usr/lib/libtic.so
 usr/lib/libform.so
 usr/lib/libmenu.so
 usr/lib/libpanel.so
-usr/lib/libncurses.a
-usr/lib/libncurses++.a
-usr/lib/libtic.a
-usr/lib/libform.a
-usr/lib/libmenu.a
-usr/lib/libpanel.a
+obj-static/lib/*.a usr/lib
 usr/share/man/man3
diff --git a/debian/libncursesw5-dev.install b/debian/libncursesw5-dev.install
index c6a4496..b8af06d 100644
--- a/debian/libncursesw5-dev.install
+++ b/debian/libncursesw5-dev.install
@@ -4,9 +4,4 @@ usr/lib/libticw.so
 usr/lib/libformw.so
 usr/lib/libmenuw.so
 usr/lib/libpanelw.so
-usr/lib/libncursesw.a
-usr/lib/libncurses++w.a
-usr/lib/libticw.a
-usr/lib/libformw.a
-usr/lib/libmenuw.a
-usr/lib/libpanelw.a
+obj-wide-static/lib/*.a usr/lib
diff --git a/debian/rules b/debian/rules
index 34d9fff..971a9c1 100755
--- a/debian/rules
+++ b/debian/rules
@@ -32,9 +32,11 @@ fulltempdir=$(workdir)/$(tempdir)
 
 srcdir=$(shell pwd)
 objdir=$(srcdir)/obj
+objdir-static=$(srcdir)/obj-static
 objdir-32=$(srcdir)/obj-32
 objdir-64=$(srcdir)/obj-64
 wobjdir=$(srcdir)/obj-wide
+wobjdir-static=$(srcdir)/obj-wide-static
 wobjdir-32=$(srcdir)/obj-wide-32
 objdir-debug=$(srcdir)/obj-debug
 wobjdir-debug=$(srcdir)/obj-wide-debug
@@ -130,6 +132,15 @@ $(objdir)/config.status: $(QUILT_STAMPFN)
 		--with-install-prefix=$(fulltempdir) \
 		--enable-overwrite
 
+$(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
+
 $(objdir-32)/config.status: $(QUILT_STAMPFN)
 	test -d $(objdir-32) || mkdir $(objdir-32)
 
@@ -175,6 +186,15 @@ $(wobjdir)/config.status: $(QUILT_STAMPFN)
 		--with-install-prefix=$(fulltempdir) \
 		--disable-overwrite --enable-widec
 
+$(wobjdir-static)/config.status: $(QUILT_STAMPFN)
+	test -d $(wobjdir-static) || mkdir $(wobjdir-static)
+	cd $(wobjdir-static) && CFLAGS="$(CFLAGS)" $(srcdir)/configure \
+		$(CONFARGS) \
+		--without-shared
+		--without-dlsym
+		--with-install-prefix=$(fulltempdir) \
+		--enable-overwrite --enable-widec
+
 $(wobjdir-debug)/config.status: $(QUILT_STAMPFN)
 	test -d $(wobjdir-debug) || mkdir $(wobjdir-debug)
 	cd $(wobjdir-debug) && \
@@ -198,8 +218,8 @@ $(wobjdir-32)/config.status: $(QUILT_STAMPFN)
 		--libdir=$(usr_lib32)
 
 
-build: build-normal build-wide build-debug build-wide-debug \
-	$(build_64) $(build_32)
+build: build-normal build-static build-wide build-debug build-wide-debug \
+	build-wide-static $(build_64) $(build_32)
 
 	touch $@
 
@@ -207,6 +227,10 @@ build-normal: $(objdir)/config.status
 	cd $(objdir) && $(MAKE)
 	touch $@
 
+build-static: $(objdir-static)/config.status
+	cd $(objdir-static) && $(MAKE)
+	touch $@
+
 build-32: $(objdir-32)/config.status
 	cd $(objdir-32) && $(MAKE)
 	touch $@
@@ -223,6 +247,10 @@ build-wide: $(wobjdir)/config.status
 	cd $(wobjdir) && $(MAKE)
 	touch $@
 
+build-wide-static: $(wobjdir-static)/config.status
+	cd $(wobjdir-static) && $(MAKE)
+	touch $@
+
 build-wide-32: $(wobjdir-32)/config.status
 	cd $(wobjdir-32) && $(MAKE)
 	touch $@
@@ -235,14 +263,16 @@ clean: unpatch
 	dh_testdir
 	rm -f build
 	rm -rf $(objdir)
+	rm -rf $(objdir-static)
 	rm -rf $(objdir-32)
 	rm -rf $(objdir-64)
 	rm -rf $(wobjdir)
+	rm -rf $(wobjdir-static)
 	rm -rf $(wobjdir-32)
 	rm -rf $(objdir-debug)
 	rm -rf $(wobjdir-debug)
-	rm -f build-normal build-wide build-debug build-wide-debug \
-		$(build_32) $(build_64)
+	rm -f build-normal build-static build-wide build-debug build-wide-debug \
+		build-wide-static $(build_32) $(build_64)
 	rm -f debian/shlibs.local
 	dh_clean
 
--8<---------------cut here---------------end--------------->8---

If there are no objections, I can push this to our git repository.
Do you think it would be necessary to do something similar for the debug
libraries (I would rather say not) ?

Sven




Information forwarded to debian-bugs-dist@lists.debian.org, Debian QA Group <packages@qa.debian.org>:
Bug#556378; Package libncurses5-dev. (Mon, 15 Feb 2010 09:48:37 GMT) Full text and rfc822 format available.

Acknowledgement sent to Sven Joachim <svenjoac@gmx.de>:
Extra info received and forwarded to list. Copy sent to Debian QA Group <packages@qa.debian.org>. (Mon, 15 Feb 2010 09:48:38 GMT) Full text and rfc822 format available.

Message #51 received at 556378@bugs.debian.org (full text, mbox):

From: Sven Joachim <svenjoac@gmx.de>
To: 556378@bugs.debian.org
Cc: Craig Small <csmall@debian.org>, Thomas Dickey <dickey@his.com>
Subject: Re: Bug#556378: Debian bug #556378 and without-dlsym
Date: Mon, 15 Feb 2010 10:44:24 +0100
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




Information forwarded to debian-bugs-dist@lists.debian.org, Debian QA Group <packages@qa.debian.org>:
Bug#556378; Package libncurses5-dev. (Mon, 15 Feb 2010 10:12:08 GMT) Full text and rfc822 format available.

Acknowledgement sent to Thomas Dickey <dickey@his.com>:
Extra info received and forwarded to list. Copy sent to Debian QA Group <packages@qa.debian.org>. (Mon, 15 Feb 2010 10:12:08 GMT) Full text and rfc822 format available.

Message #56 received at 556378@bugs.debian.org (full text, mbox):

From: Thomas Dickey <dickey@his.com>
To: Sven Joachim <svenjoac@gmx.de>
Cc: 556378@bugs.debian.org, Craig Small <csmall@debian.org>
Subject: Re: Bug#556378: Debian bug #556378 and without-dlsym
Date: Mon, 15 Feb 2010 05:01:51 -0500 (EST)
On Mon, 15 Feb 2010, Sven Joachim wrote:

> On 2010-02-14 13:50 +0100, Sven Joachim wrote:

> 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
> `----

thanks - I'll take a look...

-- 
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




Added tag(s) pending. Request was from Sven Joachim <svenjoac@gmx.de> to control@bugs.debian.org. (Mon, 22 Feb 2010 20:00:05 GMT) Full text and rfc822 format available.

Message sent on to "H.-M. Junitz" <rajunitz@web.de>:
Bug#556378. (Mon, 22 Feb 2010 20:00:07 GMT) Full text and rfc822 format available.

Message #61 received at 556378-submitter@bugs.debian.org (full text, mbox):

From: Sven Joachim <svenjoac@gmx.de>
To: 556378-submitter@bugs.debian.org
Subject: Bug#556378 marked as pending
Date: Mon, 22 Feb 2010 19:58:40 +0000
tag 556378 pending
thanks

Hello,

Bug #556378 reported by you has been fixed in the Git repository. You can
see the changelog below, and you can check the diff of the fix at:

    http://git.debian.org/?p=collab-maint/ncurses.git;a=commitdiff;h=c929374

---
commit c9293742e150e13b4f6a28903f0f8edce0f02c09
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Sun Feb 21 10:08:10 2010 +0100

    Build static libraries --without-dlsym
    
    Add two new build targets to debian/rules.  Install the static
    libraries from the corresponding build directories.

diff --git a/debian/changelog b/debian/changelog
index 482d94d..452efc2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -21,6 +21,7 @@ ncurses (5.7+20100220-1) UNRELEASED; urgency=low
     lib64ncurses-dev (Closes: #563272).
   * Install the binaries built without trace support in ncurses-bin
     to avoid symbol lookup errors (Closes: #365120).
+  * Build static libraries with "--without-dlsym" (Closes: #556378).
   * Remove compatibility symlinks in /usr/share/terminfo that were only
     necessary for upgrades from versions prior to 5.4-9.
   * debian/control cleanups:




Reply sent to Sven Joachim <svenjoac@gmx.de>:
You have taken responsibility. (Tue, 16 Mar 2010 00:39:26 GMT) Full text and rfc822 format available.

Notification sent to "H.-M. Junitz" <rajunitz@web.de>:
Bug acknowledged by developer. (Tue, 16 Mar 2010 00:39:26 GMT) Full text and rfc822 format available.

Message #66 received at 556378-close@bugs.debian.org (full text, mbox):

From: Sven Joachim <svenjoac@gmx.de>
To: 556378-close@bugs.debian.org
Subject: Bug#556378: fixed in ncurses 5.7+20100313-1
Date: Tue, 16 Mar 2010 00:37:20 +0000
Source: ncurses
Source-Version: 5.7+20100313-1

We believe that the bug you reported is fixed in the latest version of
ncurses, which is due to be installed in the Debian FTP archive:

lib32ncurses5-dev_5.7+20100313-1_amd64.deb
  to main/n/ncurses/lib32ncurses5-dev_5.7+20100313-1_amd64.deb
lib32ncurses5_5.7+20100313-1_amd64.deb
  to main/n/ncurses/lib32ncurses5_5.7+20100313-1_amd64.deb
lib32ncursesw5-dev_5.7+20100313-1_amd64.deb
  to main/n/ncurses/lib32ncursesw5-dev_5.7+20100313-1_amd64.deb
lib32ncursesw5_5.7+20100313-1_amd64.deb
  to main/n/ncurses/lib32ncursesw5_5.7+20100313-1_amd64.deb
libncurses5-dbg_5.7+20100313-1_amd64.deb
  to main/n/ncurses/libncurses5-dbg_5.7+20100313-1_amd64.deb
libncurses5-dev_5.7+20100313-1_amd64.deb
  to main/n/ncurses/libncurses5-dev_5.7+20100313-1_amd64.deb
libncurses5_5.7+20100313-1_amd64.deb
  to main/n/ncurses/libncurses5_5.7+20100313-1_amd64.deb
libncursesw5-dbg_5.7+20100313-1_amd64.deb
  to main/n/ncurses/libncursesw5-dbg_5.7+20100313-1_amd64.deb
libncursesw5-dev_5.7+20100313-1_amd64.deb
  to main/n/ncurses/libncursesw5-dev_5.7+20100313-1_amd64.deb
libncursesw5_5.7+20100313-1_amd64.deb
  to main/n/ncurses/libncursesw5_5.7+20100313-1_amd64.deb
ncurses-base_5.7+20100313-1_all.deb
  to main/n/ncurses/ncurses-base_5.7+20100313-1_all.deb
ncurses-bin_5.7+20100313-1_amd64.deb
  to main/n/ncurses/ncurses-bin_5.7+20100313-1_amd64.deb
ncurses-term_5.7+20100313-1_all.deb
  to main/n/ncurses/ncurses-term_5.7+20100313-1_all.deb
ncurses_5.7+20100313-1.diff.gz
  to main/n/ncurses/ncurses_5.7+20100313-1.diff.gz
ncurses_5.7+20100313-1.dsc
  to main/n/ncurses/ncurses_5.7+20100313-1.dsc
ncurses_5.7+20100313.orig.tar.gz
  to main/n/ncurses/ncurses_5.7+20100313.orig.tar.gz



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 556378@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Sven Joachim <svenjoac@gmx.de> (supplier of updated ncurses package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Sun, 21 Feb 2010 09:45:58 +0100
Source: ncurses
Binary: libncurses5 libncurses5-dev libncurses5-dbg libncursesw5 libncursesw5-dev libncursesw5-dbg lib64ncurses5 lib64ncurses5-dev lib32ncurses5 lib32ncurses5-dev lib32ncursesw5 lib32ncursesw5-dev ncurses-bin ncurses-base ncurses-term
Architecture: source amd64 all
Version: 5.7+20100313-1
Distribution: unstable
Urgency: low
Maintainer: Craig Small <csmall@debian.org>
Changed-By: Sven Joachim <svenjoac@gmx.de>
Description: 
 lib32ncurses5 - shared libraries for terminal handling (32-bit)
 lib32ncurses5-dev - developer's libraries for ncurses (32-bit)
 lib32ncursesw5 - shared libraries for terminal handling (wide character support) (
 lib32ncursesw5-dev - developer's libraries for ncursesw (32-bit)
 lib64ncurses5 - shared libraries for terminal handling (64-bit)
 lib64ncurses5-dev - developer's libraries for ncurses (64-bit)
 libncurses5 - shared libraries for terminal handling
 libncurses5-dbg - debugging/profiling libraries for ncurses
 libncurses5-dev - developer's libraries and docs for ncurses
 libncursesw5 - shared libraries for terminal handling (wide character support)
 libncursesw5-dbg - debugging/profiling libraries for ncurses
 libncursesw5-dev - developer's libraries for ncursesw
 ncurses-base - basic terminal type definitions
 ncurses-bin - terminal-related programs and man pages
 ncurses-term - additional terminal type definitions
Closes: 365120 429198 444250 509919 532022 542031 543852 550716 553239 556378 563272 573597
Changes: 
 ncurses (5.7+20100313-1) unstable; urgency=low
 .
   [ Sven Joachim ]
   * New upstream patchlevel.
     - Workaround for bug in g++ 4.1-4.4 warnings for wattrset() macro
       on amd64 (Closes: #542031).
     - Fix typo in curs_mouse.3x (Closes: #429198).
     - Modify CF_MAN_PAGES configure macro to replace all occurrences of
       TPUT in tput.1's manpage (Closes: #573597).
     - Bump shlibs version, as there are several new symbols.
   * Remove patch introduced in 5.5-2, applied upstream. Remove patch
     introduced in version 5.7+20090627-1, no longer necessary.
   * Switch patch system to quilt.
     - Add a short debian/README.source as recommended by policy.
   * Configure with /usr/share/terminfo as default terminfo dir, so that
     we get the correct tabset directory (Closes: #509919, LP: #200773).
   * Update xterm terminfo entry from xterm 246 (Closes: #444250).
   * Derive xterm{16,256,88}-color from xterm-debian rather than
     xterm-new for correct backspace key behavior.
   * Move the debugging libraries back to /usr/lib/debug (Closes: #553239),
     ship detached debugging symbols (Closes: #532022).
   * Fix typo in debian/rules that lead to a dangling symlink in
     lib64ncurses-dev (Closes: #563272).
   * Install the binaries built without trace support in ncurses-bin
     to avoid symbol lookup errors (Closes: #365120).
   * Build static libraries with "--without-dlsym" (Closes: #556378).
   * Remove compatibility symlinks in /usr/share/terminfo that were only
     necessary for upgrades from versions prior to 5.4-9.
   * debian/control cleanups:
     - Adjust priority of the source package to required.
     - Remove duplicate Section field for library packages.
     - Fix dependencies of lib32ncursesw5-dev.
     - Fix long descriptions of 32-bit packages on 64-bit systems.
     - Do not recommend libgpm2 in non-native library packages, nor on
       non-Linux architectures.
     - Remove very old Replaces/Conflicts/Provides on ncurses-developer,
       ncurses and tput.
     - Version the "Replaces: ia32-libs" for lib32ncurses-dev.
     - Remove no longer needed "Replaces: ncurses-term" and
       "Depends: libncurses5" from ncurses-base.
     - Set Homepage field to http://invisible-island.net/ncurses/.
     - Add Vcs-Browser and Vcs-Git fields.
     - Add ${misc:Depends} in all Depends fields.
     - Add myself to Uploaders.
   * Add lintian override for alleged spelling error in ncurses-base'
     extended description; "linux" refers to a terminal type there.
   * Use dh_install instead of dh_movefiles to install files and clean
     up debian/rules a bit.
   * Update Standards-Version to 3.8.4, no changes needed.
 .
   [ Craig Small ]
   * New maintainer Closes: 543852
   * Cross compile patch applied Closes: #550716
Checksums-Sha1: 
 d7fd67e22001bababfdaf5daa200cb49d4c3eee2 1567 ncurses_5.7+20100313-1.dsc
 78cab206166d278f0ab6f2df0d20ff569cbf305a 2612398 ncurses_5.7+20100313.orig.tar.gz
 57fb3fac17491c23c9363895d3598f6765eca724 45965 ncurses_5.7+20100313-1.diff.gz
 8089af6d5e65c1229272aa81b1a1fc5b3e1e4b5b 364428 libncurses5_5.7+20100313-1_amd64.deb
 7c60ec0300adfc8122198fe7e9e5a99b2a0820b5 1631998 libncurses5-dev_5.7+20100313-1_amd64.deb
 f6a382e24df24a8eb98538fcf7b9e772a3867e6a 3260948 libncurses5-dbg_5.7+20100313-1_amd64.deb
 c30e205ae3ca3e316409a7150c700e4ff10a2702 389154 libncursesw5_5.7+20100313-1_amd64.deb
 bbd6e9095f8b733b2602e3d55e081ee41763aae2 528134 libncursesw5-dev_5.7+20100313-1_amd64.deb
 2edea94eaed0a1503c44f06382c8db259f026bae 2803976 libncursesw5-dbg_5.7+20100313-1_amd64.deb
 3ab82f33fc1731ec779e535e674a7609d391d5c0 344366 lib32ncurses5_5.7+20100313-1_amd64.deb
 44b4c16d0f8e44f49bdda306192c9f982a07dcab 396646 lib32ncurses5-dev_5.7+20100313-1_amd64.deb
 5f43ba38a4899f1bf9c039d8386484a999944d35 370856 lib32ncursesw5_5.7+20100313-1_amd64.deb
 90fc2f33feab71509477e0ef6461fc682acb3e5c 426102 lib32ncursesw5-dev_5.7+20100313-1_amd64.deb
 c550a429cddc3c91f30175ea236efe9055a6e9b7 319822 ncurses-bin_5.7+20100313-1_amd64.deb
 35a638c53cecdfe1ca990018c7c17726769ab840 187128 ncurses-base_5.7+20100313-1_all.deb
 181bc883e908ee1c9cfeff047db5f51063683846 576314 ncurses-term_5.7+20100313-1_all.deb
Checksums-Sha256: 
 8f5099d0680e3d3e04765c4c05f916aa83a7f9bbb3ff7dc2778861114cd0aeec 1567 ncurses_5.7+20100313-1.dsc
 95e8629e1596366e20f8a72eff80b3d0ba91d1a79cc38b4696bfe39cfc6815ef 2612398 ncurses_5.7+20100313.orig.tar.gz
 837ce8472cc7f2f72766646de090bc512e7a1b5dccbdadc6dc3ae51e62290b72 45965 ncurses_5.7+20100313-1.diff.gz
 095563ee6304011da08bfc6b23767732760619a4a4528135490b9cf0e10ecb31 364428 libncurses5_5.7+20100313-1_amd64.deb
 dd2c06bd799ad65ecea26dc6b20d504ba9cf246f3070f47c31903615c50e051a 1631998 libncurses5-dev_5.7+20100313-1_amd64.deb
 abaa1f30ccac0504c46b9724e859a4f78ee23e7ec2c66aa536cda9d6151ba301 3260948 libncurses5-dbg_5.7+20100313-1_amd64.deb
 975904c340d6149bae428738b4e83b658ef872a34866a5573febb87460410f52 389154 libncursesw5_5.7+20100313-1_amd64.deb
 e33416eb5cc778baef1750db44eae09a36889f9eb9dd01af991cab02008142f5 528134 libncursesw5-dev_5.7+20100313-1_amd64.deb
 59e694705b20cf242ab1da572f108484d64827ccc94bc56113c6338edce31878 2803976 libncursesw5-dbg_5.7+20100313-1_amd64.deb
 5568e1850779607dfcacdc94f52dc0a81cda2f526521238bf42ceb93ed4648ea 344366 lib32ncurses5_5.7+20100313-1_amd64.deb
 39620997ac6ea973be99208bc79ff82150b0f4a599343512341da92c2203f93f 396646 lib32ncurses5-dev_5.7+20100313-1_amd64.deb
 22dfe05e9b18d92ccd04b167b405fd53fb691adb9aca53835f7520d241a2becb 370856 lib32ncursesw5_5.7+20100313-1_amd64.deb
 b020151b2acde2c420b227c52a41c47afa179fff3490c7b27e7457fdef73df9b 426102 lib32ncursesw5-dev_5.7+20100313-1_amd64.deb
 40abd35bfa8d74b8ee5ffa34818f0e95c602aa5a4f4869551217a51b2eea5be9 319822 ncurses-bin_5.7+20100313-1_amd64.deb
 ca6bfb667be50a161c50980015ce69f1a29fe21c1e1094f036618b4b8ef67401 187128 ncurses-base_5.7+20100313-1_all.deb
 e397ac2eaba252f36fa2b0a3a4e511e44774485c071bcbb9dc0131201752135d 576314 ncurses-term_5.7+20100313-1_all.deb
Files: 
 1828455ebe522121f1a9e5a0a2682407 1567 libs required ncurses_5.7+20100313-1.dsc
 89f4f4b6dc88cc147c6f4b7a7f9fa80b 2612398 libs required ncurses_5.7+20100313.orig.tar.gz
 e8efe5f39428b837a975317a5520f465 45965 libs required ncurses_5.7+20100313-1.diff.gz
 1baf1cb07f2b93337086cc0fe3b4ce9e 364428 libs required libncurses5_5.7+20100313-1_amd64.deb
 bee9f02e7f657a1f3dbcab64d82e3593 1631998 libdevel optional libncurses5-dev_5.7+20100313-1_amd64.deb
 8e445a0acac4b8a2ed9a5bd8677386a9 3260948 debug extra libncurses5-dbg_5.7+20100313-1_amd64.deb
 f37c1d8f5eec4969a12e7fe816a4db18 389154 libs important libncursesw5_5.7+20100313-1_amd64.deb
 17554149c250d3a7dd13182a91361102 528134 libdevel optional libncursesw5-dev_5.7+20100313-1_amd64.deb
 7a6b42c271274cc5fe970b80604a0760 2803976 debug extra libncursesw5-dbg_5.7+20100313-1_amd64.deb
 fadbf4f97d547884d4eab546126aa86b 344366 libs optional lib32ncurses5_5.7+20100313-1_amd64.deb
 a4da64ca27d7edd0b34c9915c5f9d1c7 396646 libdevel optional lib32ncurses5-dev_5.7+20100313-1_amd64.deb
 224ca9578a1dcce6ef6330ad616a667a 370856 libs optional lib32ncursesw5_5.7+20100313-1_amd64.deb
 7957cd451f14b737f748645c22eba196 426102 libdevel optional lib32ncursesw5-dev_5.7+20100313-1_amd64.deb
 7ef749fc8c70b325676581c2e8d1fdfb 319822 utils required ncurses-bin_5.7+20100313-1_amd64.deb
 a5464897db2c96ffec75b64fd8447dba 187128 utils required ncurses-base_5.7+20100313-1_all.deb
 5b1298da2c5ee553567792b6f3137756 576314 admin standard ncurses-term_5.7+20100313-1_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iD8DBQFLns2Vx2zlrBLK36URAsRIAKCHNvA64fYgvil+SEfAYx/00CWLwACgm6Xq
aeBqRvxlP79H2IiXp6/GsEg=
=u5J5
-----END PGP SIGNATURE-----





Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Thu, 22 Apr 2010 07:38:43 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed Apr 23 16:46:35 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.