ports/116130: x11-toolkits/blt: Patch to build libBLT24.so with proper dependencies
TAOKA Fumiyoshi
fmysh at iijmio-mail.jp
Wed Sep 5 18:30:02 UTC 2007
>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"
More information about the freebsd-ports-bugs
mailing list