NetBSD Problem Report #33104
From wiz@hiro.nih.at Mon Mar 20 07:22:49 2006
Return-Path: <wiz@hiro.nih.at>
Received: from viefep17-int.chello.at (viefep14-int.chello.at [213.46.255.14])
by narn.netbsd.org (Postfix) with ESMTP id 4B46A63B8F3
for <gnats-bugs@gnats.NetBSD.org>; Mon, 20 Mar 2006 07:22:48 +0000 (UTC)
Message-Id: <20060320072246.35318E135D@hiro.nih.at>
Date: Mon, 20 Mar 2006 08:22:46 +0100 (CET)
From: Thomas Klausner <wiz@NetBSD.org>
Reply-To: Thomas Klausner <wiz@NetBSD.org>
To: gnats-bugs@netbsd.org
Subject: buildlink3 transform for DynaLoader.a causes problems
X-Send-Pr-Version: 3.95
>Number: 33104
>Category: pkg
>Synopsis: buildlink3 transform for DynaLoader.a causes problems
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Mar 20 07:25:01 +0000 2006
>Closed-Date: Mon Jun 01 13:00:32 +0000 2015
>Last-Modified: Mon Jun 01 13:00:32 +0000 2015
>Originator: Thomas Klausner
>Release: NetBSD 3.99.17
>Organization:
>Environment:
Architecture: i386
Machine: i386
>Description:
In mk/buildlink3.mk and wrapper/arg-pp-main, there is a transformation
rule for DynaLoader.a -> libDynaLoader_pic.a and back, so that libtool
recognizes it as a shared object.
However, at least for gnumeric, the transformed argument is passed off
to ar(1), which doesn't find it (and caused a build failure in gnumeric
before I disabled the perl plugin there).
>How-To-Repeat:
cd /usr/pkgsrc/math/gnumeric
enable the perl/bl3.mk inclusion again.
On -current after 3.99.16, 'make'.
(before that the same error happens but is disregarded by
the build system somehow):
-current:
*** Warning: Linking the shared library perl_loader.la against the
*** static library /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a is not portable!
cc -shared .libs/boot.o .libs/perl-loader.o .libs/perl-gnumeric.o .libs/xsinit.o -L/usr/obj/math/gnumeric/work.i386/.buildlink/lib -L/usr/obj/math/gnumeric/work.i386/.buildlink/lib/python2.4/config -L/usr/obj/math/gnumeric/work.i386/.x11-buildlink/lib /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a -L/usr/obj/math/gnumeric/work.i386/.buildlink/lib/perl5/5.8.0/i386-netbsd-thread-multi/CORE -lperl -lcrypt -lpthread -lm -Wl,-R/usr/pkg/lib -Wl,-R/usr/pkg/lib/python2.4/config -Wl,-R/usr/X11R6/lib -Wl,-E -Wl,-R/usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/CORE -Wl,-soname -Wl,perl_loader.so -o .libs/perl_loader.so
ar cru .libs/perl_loader.a /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a boot.o perl-loader.o perl-gnumeric.o xsinit.o /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a
ar: /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a: No such file or directory
gmake[3]: *** [perl_loader.la] Error 1
3.0:
*** Warning: Linking the shared library perl_loader.la against the
*** static library /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a is not portable!
cc -shared .libs/boot.o .libs/perl-loader.o .libs/perl-gnumeric.o .libs/xsinit.o -L/usr/obj/math/gnumeric/work/.buildlink/lib -L
ESC[129CESCML/usr/obj/math/gnumeric/work/.buildlink/lib/python2.4/config -L/usr/obj/math/gnumeric/work/.x11-buildlink/lib /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a -L/usr/obj/math/gnumeric/work/.buildlink/lib/perl5/5.8.0/i386-netbsd-thread-multi/CORE -lperl -lcrypt -lpthread -lm -Wl,-R/usr/pkg/lib -Wl,-R/usr/pkg/lib/python2.4/config -Wl,-R/usr/X11R6/lib -Wl,-E -Wl,-R/usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/CORE -Wl,-soname -Wl,perl_loader.so -o .libs/perl_loader.so
ar cru .libs/perl_loader.a /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a boot.o perl-loader.o perl-gnumeric.o xsinit.o /usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a
ar: '/usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a': No such file
ar: '/usr/pkg/lib/perl5/5.8.0/i386-netbsd-thread-multi/auto/DynaLoader/libDynaLoader_pic.a': No such file
ranlib .libs/perl_loader.a
creating perl_loader.la
(cd .libs && rm -f perl_loader.la && ln -s ../perl_loader.la perl_loader.la)
LC_ALL=C ../../intltool-merge -x -u -c ../../po/.intltool-merge-cache ../../po p
lugin.xml.in plugin.xml
Found cached translation database
...
>Fix:
Either teach libtool to recognize shared objects differently,
or at least identify DynaLoader.a as shared, or add handling for
ar(1) arguments. Or some other way?
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: pkg-manager->jlam
Responsible-Changed-By: wiz@netbsd.org
Responsible-Changed-When: Mon, 20 Mar 2006 07:26:51 +0000
Responsible-Changed-Why:
buildlink3 problem, over to its maintainer.
Responsible-Changed-From-To: jlam->pkg-manager
Responsible-Changed-By: wiz@NetBSD.org
Responsible-Changed-When: Sun, 21 Mar 2010 16:10:06 +0000
Responsible-Changed-Why:
Back to role account, jlam lost his commit bit.
State-Changed-From-To: open->feedback
State-Changed-By: bsiegert@NetBSD.org
State-Changed-When: Sun, 17 May 2015 12:28:11 +0000
State-Changed-Why:
Is this still an issue?
State-Changed-From-To: feedback->closed
State-Changed-By: wiz@NetBSD.org
State-Changed-When: Mon, 01 Jun 2015 13:00:32 +0000
State-Changed-Why:
All gnumeric packages depend on perl now, so this seems fixed.
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.