severity 712088 grave
tag 712088 patch
thanks

On Thu, Jun 13, 2013 at 07:09:33AM +1000, Kevin Ryde wrote:
> Package: libg20-perl
> Version: 0.72-2.1+b1
> Severity: normal
> 
> Running the G2 pod synopsis code
> 
>     use G2;
>     $dev2 = newGD  G2::Device("test.png",600,200);
> 
> gives an error
> 
>     perl: symbol lookup error: /usr/lib/perl5/auto/G2/G2.so: undefined 
> symbol: g2_open_gd
> 
> 
> "ldd /usr/lib/perl5/auto/G2/G2.so" claims G2.so doesn't have a "NEEDED"
> record for /usr/lib/libg2.so.  I wonder if it should or if that's
> supposed to come in another way.

It definitely should, but it's not there because there's a typo in
debian/rules. 

I'm raising the severity as libg20-perl is apparently unusable.

Proposed patch attached.
-- 
Niko Tyni   nt...@debian.org
>From 2c745d6191232448235f43dced7b79f968e3f35a Mon Sep 17 00:00:00 2001
From: Niko Tyni <nt...@debian.org>
Date: Sun, 15 Dec 2013 23:04:08 +0200
Subject: [PATCH] Fix the perl build to properly link against libg2.

The typo in $(CURDIR) made libg2 linkage get skipped.
The LD_RUN_PATH trick is to avoid an RPATH setting in the resulting DSO.
---
 debian/rules | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/debian/rules b/debian/rules
index f230c61..c202f63 100755
--- a/debian/rules
+++ b/debian/rules
@@ -34,8 +34,8 @@ override_dh_auto_build:
 	# clean up and build the shared lib
 	-rm -f src/*.o src/*/*.o
 	$(MAKE) PICFLAG="-fPIC" RVERSION=$(rversion) MVERSION=$(major) DEBCFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" shared
-	(cd ./g2_perl && perl Makefile.PL INSTALLDIRS=vendor LIBS="-L$(CURIDR)/g2_perl/.. -lg2")
-	$(MAKE) -C ./g2_perl
+	(cd ./g2_perl && perl Makefile.PL INSTALLDIRS=vendor LIBS="-L$(CURDIR) -lg2")
+	$(MAKE) -C ./g2_perl LD_RUN_PATH=""
 
 override_dh_auto_install:
 	$(MAKE) RVERSION=$(rversion) MVERSION=$(major) install prefix=$(CURDIR)/debian/libg2-dev
-- 
1.8.5

Reply via email to