Description of problem: TCL_PACKAGE_PATH is missing /usr/lib/tk8.5 This causes "package require Tk" to fail ( can't find package) when invoked from a tcl script. Version-Release number of selected component (if applicable): tcl 8.5.7 (Fedora 12) How reproducible: Every time Steps to Reproduce: 1. Install tcl and tk 2. run tclsh 3. issue command 'package require Tk' Actual results: Error package Tk not found Expected results: Tk will be loaded... Additional info: Two workarounds: Start gui apps with wish or create a package that will load the libTk.so in /usr/lib/tcl8.5
It looks like it got broken in Rawhide in May: $ cvs diff -u -r 1.1 tcl-8.5.1-autopath.patch [...] Index: tcl-8.5.1-autopath.patch =================================================================== RCS file: /cvs/pkgs/rpms/tcl/devel/tcl-8.5.1-autopath.patch,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- tcl-8.5.1-autopath.patch 17 Mar 2008 14:42:59 -0000 1.1 +++ tcl-8.5.1-autopath.patch 18 May 2009 11:27:38 -0000 1.2 @@ -1,21 +1,23 @@ -diff -up tcl8.5.1/unix/configure.in.autopath tcl8.5.1/unix/configure.in ---- tcl8.5.1/unix/configure.in.autopath 2008-02-05 18:00:35.000000000 +0100 -+++ tcl8.5.1/unix/configure.in 2008-03-17 14:57:24.000000000 +0100 -@@ -795,9 +795,9 @@ if test "$FRAMEWORK_BUILD" = "1" ; then - test -z "$TCL_MODULE_PATH" && \ - TCL_MODULE_PATH="~/Library/Tcl /Library/Tcl /Network/Library/Tcl /System/Library/Tcl" - elif test "$prefix/lib" != "$libdir"; then -- TCL_PACKAGE_PATH="${libdir} ${prefix}/lib ${TCL_PACKAGE_PATH}" -+ TCL_PACKAGE_PATH="${libdir}/tcl8.5 ${libdir}/tk8.5 ${prefix}/lib/tcl8.5 ${prefix}/lib/tk8.5 ${prefix}/share/tcl8.5 ${TCL_PACKAGE_PATH}" - else -- TCL_PACKAGE_PATH="${prefix}/lib ${TCL_PACKAGE_PATH}" -+ TCL_PACKAGE_PATH="${libdir}/tcl8.5 ${prefix}/share/tcl8.5 ${libdir}/tk8.5 ${TCL_PACKAGE_PATH}" - fi $ cvs log tcl-8.5.1-autopath.patch [...] revision 1.2 date: 2009/05/18 11:27:38; author: mmaslano; state: Exp; lines: +33 -33 * Mon May 18 2009 Marcela Mašláňová <mmaslano> - 1:8.5.7-1 - 489017 update to 8.5.7 with systemtap support Please revert the change that broke this. Being able to do a 'package require Tk' from the tclsh interpreter is a very valuable feature.
tcl-8.5.7-6.fc13 has been submitted as an update for Fedora 13. http://admin.fedoraproject.org/updates/tcl-8.5.7-6.fc13
For F12 it seems that it was fixed in tcl-8.5.7-5.fc12. But it wasn't fixed in rawhide and the F13 is also affected. Thus reassigning to F13. Update pushed through bodhi - tcl-8.5.7-6.fc13
tcl-8.5.7-6.fc13 has been pushed to the Fedora 13 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update tcl'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/tcl-8.5.7-6.fc13
I am using rawhide with: tcl-8.5.8-1.fc14.i686 tk-8.5.8-1.fc14.i686 and when I do: $ tclsh % package require Tk I still get: can't find package Tk
Probably mirror lag, the latest in rawhide is tcl-8.5.8-2.fc14 with fixed Tk paths.
Thanks! I updated to tcl-8.5.8-2.fc14 and it works fine!
tcl-8.5.7-6.fc13 has been pushed to the Fedora 13 stable repository. If problems still persist, please make note of it in this bug report.