Date: Thu, 6 Sep 2007 03:26:05 +0900 (JST) From: TAOKA Fumiyoshi <fmysh@iijmio-mail.jp> To: FreeBSD-gnats-submit@FreeBSD.org Cc: TAOKA Fumiyoshi <fmysh@iijmio-mail.jp> Subject: ports/116130: x11-toolkits/blt: Patch to build libBLT24.so with proper dependencies Message-ID: <20070905182605.D00E8153450@xeon.quad.dyndns.org> Resent-Message-ID: <200709051830.l85IU25T096178@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 116130 >Category: ports >Synopsis: x11-toolkits/blt: Patch to build libBLT24.so with proper dependencies >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Sep 05 18:30:01 GMT 2007 >Closed-Date: >Last-Modified: >Originator: TAOKA Fumiyoshi >Release: >Organization: >Environment: FreeBSD ports: tcl-8.4.15_2,1 tk-8.4.15_3,2 python-2.5,2 py25-tkinter-2.5.1_2 >Description: libBLT24.so has no ldd dependencies on tcl or tk. $ ldd /usr/local/lib/libBLT24.so.3 /usr/local/lib/libBLT24.so.3: This causes a problem in some environment, say py-tkinter, which is a Tk wrapper for Python. >How-To-Repeat: The operation equivalent to "package require BLT" in Tcl/Tk fails. libBLT24.so can't resolve TclpAlloc in libtcl84.so because it has no dependency. $ python >Fix: The patch below is originally Bill Barnard posted to SourceForge. http://sourceforge.net/tracker/index.php?func=detail&aid=1470209&group_id=18616&atid=318616 This makes libBTL24.so built with valid dependencies. $ ldd /usr/local/lib/libBLT24.so.3: libtk84.so.1 => /usr/local/lib/libtk84.so.1 (0x68264000) libtcl84.so.1 => /usr/local/lib/libtcl84.so.1 (0x6833c000) libX11.so.6 => /usr/local/lib/libX11.so.6 (0x683e8000) libm.so.4 => /lib/libm.so.4 (0x684d6000) libXau.so.6 => /usr/local/lib/libXau.so.6 (0x684ee000) libXdmcp.so.6 => /usr/local/lib/libXdmcp.so.6 (0x684f1000) librpcsvc.so.3 => /usr/lib/librpcsvc.so.3 (0x684f6000) New file: files/patch-src-shared-Makefile.in diff --exclude CVS -uNr blt.orig/files/patch-src-shared-Makefile.in blt/files/patch-src-shared-Makefile.in --- blt.orig/files/patch-src-shared-Makefile.in 1970-01-01 09:00:00.000000000 +0900 +++ blt/files/patch-src-shared-Makefile.in 2007-09-06 02:36:32.000000000 +0900 @@ -0,0 +1,12 @@ +diff -Naur src/shared/Makefile.in.orig src/shared/Makefile.in +--- src/shared/Makefile.in.orig 2006-04-13 19:48:50.571196310 -0700 ++++ src/shared/Makefile.in 2006-04-13 19:52:04.734265733 -0700 +@@ -14,7 +14,7 @@ + EXTRA_CFLAGS = @GCCFLAGS@ @SHLIB_CFLAGS@ + DEFINES = @DEFINES@ + DEF_BLTINIT = -DBLT_LIBRARY=\"$(scriptdir)\" +-SHLIB_LD_FLAGS = @SHLIB_LD_FLAGS@ @LD_RUN_PATH@ ++SHLIB_LD_FLAGS = @SHLIB_LD_FLAGS@ @LD_RUN_PATH@ @LIB_SPECS@ + SHLIB_TCL_ONLY_LIB_SPECS = @SHLIB_TCL_ONLY_LIB_SPECS@ + SHLIB_LIB_SPECS = @SHLIB_LIB_SPECS@ + SHLIB_LD = @SHLIB_LD@ >Release-Note: >Audit-Trail: >Unformatted: >>> import Tkinter >>> window = Tkinter.Tk() >>> window.tk.call('package', 'require', 'BLT') Traceback (most recent call last): File "<stdin>", line 1, in <module> _tkinter.TclError: couldn't load file "/usr/local/lib/libBLT24.so": /usr/local/lib/libBLT24.so: Undefined symbol "TclpAlloc"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070905182605.D00E8153450>