Subject: Re: unable to compile devel/popt
To: Siegmund Fuehringer <sifu@isohypse.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 05/15/2004 22:13:28
On Fri, 14 May 2004, Siegmund Fuehringer wrote:

> i'm not able to compile devel/popt under a Linux/PPC OS:

> gcc -Wall -O2
> -I/mnt/extra/pkgsrc_work/devel/popt/work/.buildlink/include
> -Wl,-R/usr/pkg-200405/gcc-2.95.3/lib/gcc-lib/ppc-unknown-linux/2.95.3
> -Wl,-R/usr/pkg-200405/lib -o test1 -static test1.o ./.libs/libpopt.a
> -L/mnt/extra/pkgsrc_work/devel/popt/work/.buildlink/gcc-2.95.3/lib/gcc-lib/ppc-unknown-linux/2.95.3
> -L/mnt/extra/pkgsrc_work/devel/popt/work/.buildlink/gcc-2.95.3/lib
> -L/mnt/extra/pkgsrc_work/devel/popt/work/.buildlink/lib
> /mnt/extra/pkgsrc_work/devel/popt/work/.buildlink/lib/libintl.a
> /mnt/extra/pkgsrc_work/devel/popt/work/.buildlink/lib/libiconv.a -lc
> /usr/lib/libc.a(dcigettext.o)(.text+0xb5c): In function `_nl_find_msg':
> : multiple definition of `_nl_find_msg'
> /mnt/extra/pkgsrc_work/devel/popt/work/.buildlink/lib/libintl.a(dcigettext.o)(.text+0xd6c):
> first defined here
> /usr/pkg/bin/ld: Warning: size of symbol `_nl_find_msg' changed from 1460 in /usr/lib/libc.a(dcigettext.o) to 1600 in /usr/lib/libc.a(dcigettext.o)
> collect2: ld returned 1 exit status

> so... any ideas how to solve this?

Don't use converters/libiconv. Since you use Linux, you probably already
have a glibc with a working iconv.

diff -b -u -r1.26 Makefile
--- converters/libiconv/Makefile	28 Apr 2004 15:19:04 -0000	1.26
+++ converters/libiconv/Makefile	16 May 2004 05:10:54 -0000
@@ -10,6 +10,12 @@
 HOMEPAGE=		http://www.gnu.org/software/libiconv/
 COMMENT=		Character set conversion library

+.include "../../mk/bsd.prefs.mk"
+.if ${OPSYS} == "Linux"
+# don't use PKG_SKIP_REASON yet so we can make sure the buildlinking is correct
+PKG_FAIL_REASON+=	"${PKGNAME} is not needed for Linux; it is included in GNU libc."
+.endif
+
 PKG_INSTALLATION_TYPES=	overwrite pkgviews

 USE_BUILDLINK3=		YES


And fix the builtin.mk so it is not used for Linux.

Also, consider not using gettext-libs too. Since you probably have glibc.

I'd try deinstalling libiconv and gettext-libs. (And make them never
install again.)

I use Linux. I do not use libiconv and I do not use gettext-libs. If I
really need gettext-provided tools, I use the wip/gettext-tools package
(which is newer).

 Jeremy C. Reed

 	  	 	 BSD News, BSD tutorials, BSD links
	  	 	 http://www.bsdnewsletter.com/