Thread: [tcltk-perl] Re: issue building Tcl-Tk-0.77
Brought to you by:
hobbs
From: Vadim K. <va...@ar...> - 2004-04-21 04:15:10
|
> Please note: I probably don't actually use the modules described in > this email. I'm just trying to go through all of the modules on CPAN, > install them, and report issues back to the maintainers. Just my way > of trying to give back to the Perl community. > > I just installed Tcl-0.77 and when trying this: > > Extracting /usr/mirror/cpan/modules/by-module/Devel/Tcl-Tk-0.77.tar.gz... > perl: relocation error: /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi/auto/Tcl/Tcl.so: undefined symbol: Tcl_FindExecutable > > Any thoughts? thank you, we'll try to reproduce and fix this problem. Could you please say version numbers for Perl and Tcl? Right now, I'll ask others: does anyone has experienced similar problem? Best regards, Vadim. |
From: Vadim K. <va...@ar...> - 2004-04-21 04:19:00
|
looking at recent changelog changes people could think we have time travel device :) |
From: Jeff H. <je...@ac...> - 2004-04-21 04:41:50
|
Vadim Konovalov wrote: > looking at recent changelog changes people could think we have time travel > device :) Yes, with you so far ahead of UTC, that's life. It would be nice if the ChangeLog stuck to UTC, but I don't think it's a big deal. :) Jeff |
From: Mike C. <da...@gm...> - 2004-04-21 04:28:22
|
On Wed, 21 Apr 2004 08:24:48 +0400, Vadim Konovalov <va...@ar...> wrote: > > > Please note: I probably don't actually use the modules described in > > this email. I'm just trying to go through all of the modules on CPAN, > > install them, and report issues back to the maintainers. Just my way > > of trying to give back to the Perl community. > > > > I just installed Tcl-0.77 and when trying this: > > > > Extracting /usr/mirror/cpan/modules/by-module/Devel/Tcl-Tk-0.77.tar.gz... > > perl: relocation error: > /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi/auto/Tcl/Tcl.so: > undefined symbol: Tcl_FindExecutable > > > > Any thoughts? > > thank you, we'll try to reproduce and fix this problem. Could you please say > version numbers for Perl and Tcl? > > Right now, I'll ask others: does anyone has experienced similar problem? perl-5.8.4-RC2 Tcl-0.77 Tcl-Tk-0.77 Just realize what I sent you before was probably the output from my build script. This might be more recognizable: nexus@thune[9:27pm]src/Tcl-Tk/Tcl-Tk-0.77(518) perl Makefile.PL perl: relocation error: /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi/auto/Tcl/Tcl.so: undefined symbol: Tcl_FindExecutable |
From: Mike C. <da...@gm...> - 2004-04-21 04:38:45
|
This probably says a lot: nexus@thune[9:37pm]src/Tcl-Tk/Tcl-Tk-0.77(520) perl -e 'use Tcl;' perl: relocation error: /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi/auto/Tcl/Tcl.so: undefined symbol: Tcl_FindExecutable |
From: Jeff H. <je...@ac...> - 2004-04-21 04:44:03
|
Mike Castle wrote: > Just realize what I sent you before was probably the output from my > build script. > nexus@thune[9:27pm]src/Tcl-Tk/Tcl-Tk-0.77(518) perl Makefile.PL > perl: relocation error: > /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi/auto/Tcl/Tcl.so: > undefined symbol: Tcl_FindExecutable It doesn't appear to be linking against the Tcl library properly. -- Jeff Hobbs, The Tcl Guy http://www.ActiveState.com/, a division of Sophos |
From: Mike C. <da...@gm...> - 2004-04-21 23:54:35
|
On Tue, 20 Apr 2004 21:36:13 -0700, Jeff Hobbs <je...@ac...> wrote: > Mike Castle wrote: > > nexus@thune[9:27pm]src/Tcl-Tk/Tcl-Tk-0.77(518) perl Makefile.PL > > perl: relocation error: > > /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi/auto/Tcl/Tcl.so: > > undefined symbol: Tcl_FindExecutable > > It doesn't appear to be linking against the Tcl library properly. DING DING DING we have a winner It turns out that, for my machine, there is no libtcl, only libtcl8.4. But it looks like the Makefile.PL for Tcl goes to great pains to look for libtcl only. Ok. So I learned about --tclconfig. It's much happier now. Thanks! mrc |
From: Mike C. <da...@gm...> - 2004-04-21 22:52:15
|
On Tue, 20 Apr 2004 22:06:19 -0700, Mike Castle <da...@gm...> wrote: > It turns out that, for my machine, there is no libtcl, only libtcl8.4. > > But it looks like the Makefile.PL for Tcl goes to great pains to look > for libtcl only. > > Ok. So I learned about --tclconfig. > > It's much happier now. I spoke too soon. It turns out that, indeed, now Tcl is actually linking against libtcl. However, Tcl-Tk is still having issues. Particularly, it's trying to use TK_INCLUDE_SPEC. However, I just unpacked every version of tk8.4.0 through tk8.4.6, and NONE of them use TK_INCLUDE_SPEC. Now this is greatly confusing as cvs shows that it's been checked in since 2003-09-25, and bth tk8.4.5 and tk8.4.6 have been released since then. So I'm not sure if this is a bug in tk for not shipping with that; or Tcl-Tk for trying to use a feature that hasn't officially been shipped yet..... mrc |
From: Jeff H. <je...@Ac...> - 2004-04-22 00:40:35
|
> It turns out that, indeed, now Tcl is actually linking against libtcl. > > However, Tcl-Tk is still having issues. > > Particularly, it's trying to use TK_INCLUDE_SPEC. > > However, I just unpacked every version of tk8.4.0 through > tk8.4.6, and NONE of them use TK_INCLUDE_SPEC. You are correct, that var is a red herring and can be removed. Tcl and Tk should have their includes in the same place, so the TK_INCLUDE_SPEC will always be empty, but TCL_INCLUDE_SPEC will carry the contents regardless (and is also used). > So I'm not sure if this is a bug in tk for not shipping with > that; or Tcl-Tk for trying to use a feature that hasn't > officially been shipped yet..... Needs to be corrected in Tcl-Tk. Jeff Hobbs, The Tcl Guy http://www.ActiveState.com/, a division of Sophos |
From: Mike C. <da...@gm...> - 2004-04-22 00:48:19
|
On Wed, 21 Apr 2004 17:37:29 -0700, Jeff Hobbs <je...@ac...> wrote: > > > It turns out that, indeed, now Tcl is actually linking against libtcl. > > > > However, Tcl-Tk is still having issues. > > > > Particularly, it's trying to use TK_INCLUDE_SPEC. > > > > However, I just unpacked every version of tk8.4.0 through > > tk8.4.6, and NONE of them use TK_INCLUDE_SPEC. > > You are correct, that var is a red herring and can be removed. > Tcl and Tk should have their includes in the same place, so the > TK_INCLUDE_SPEC will always be empty, but TCL_INCLUDE_SPEC will > carry the contents regardless (and is also used). The problem isn't tcl/tk headers, it's X headers. I ended up with this patch: diff -ru Tcl-Tk-0.77.orig/Makefile.PL Tcl-Tk-0.77/Makefile.PL --- Tcl-Tk-0.77.orig/Makefile.PL 2004-04-17 00:35:36.000000000 -0700 +++ Tcl-Tk-0.77/Makefile.PL 2004-04-21 00:01:37.000000000 -0700 @@ -61,7 +61,7 @@ $libspecvar = "TK_LIB_SPEC"; $libspecvar = "TK_BUILD_LIB_SPEC" if $buildspec; my ($tklibpath, $tkincpath) = - process_tclconfig($tkconfig, $libspecvar, "TK_INCLUDE_SPEC"); + process_tclconfig($tkconfig, $libspecvar, "TK_XINCLUDES"); $libpath .= " $tklibpath"; $incpath .= " $tkincpath"; } else { |
From: Jeff H. <je...@Ac...> - 2004-04-22 01:03:13
|
> The problem isn't tcl/tk headers, it's X headers. ... > I ended up with this patch: > > my ($tklibpath, $tkincpath) = > - process_tclconfig($tkconfig, $libspecvar, "TK_INCLUDE_SPEC"); > + process_tclconfig($tkconfig, $libspecvar, "TK_XINCLUDES"); Ah, right you are. That will make a difference when the X headers aren't in a "standard" location. I've commited the patch. Jeff |