| View previous topic :: View next topic |
| Author |
Message |
radub n00b


Joined: 23 Feb 2005 Posts: 25
|
Posted: Tue Jun 12, 2007 9:34 pm Post subject: Problem with tcl |
|
|
I have some problem with tcl.
Some time ago, I wanted to use amsn with anti-aliased fonts, as described on this topic :Get aMSN to use anti-aliased fonts (with ebuilds), which made me use tcl and tk versions 8.5 (from that topic), but recently I was forced to downgrade to the 8.4 versions from portage.
Since I did that, a series of ebuilds (pulled in by revdep-rebuild) fail to compile and complain about missing tcl libs, such as ltcl8.4 and ltclstub8.4 - they aren't found by ld. Among the ebuilds that fail are ppracer, graphviz, xchat, and also amsn-0.97RC1 compiled from tarball; they all can't find those libs above.
The error lines look like this:
| Code: | /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../i686-pc-linux-gnu/bin/ld: cannot find -ltclstub8.4
/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../i686-pc-linux-gnu/bin/ld: cannot find -ltcl8.4 |
I've compiled both tcl and tk with and without threads - same results.
I'd appreciate any help. |
|
| Back to top |
|
 |
didymos Advocate


Joined: 10 Oct 2005 Posts: 4798 Location: California
|
Posted: Wed Jun 13, 2007 7:37 am Post subject: |
|
|
And revdep-rebuild can't rebuild any of the broken packages? Sounds like a build order or circular dependency problem. See if you can re-emerge any of those by hand, and check their deps for possible conflicts. _________________ Thomas S. Howard |
|
| Back to top |
|
 |
didymos Advocate


Joined: 10 Oct 2005 Posts: 4798 Location: California
|
Posted: Wed Jun 13, 2007 7:40 am Post subject: |
|
|
By the way, what forced you to downgrade tcl/tk? Also, if this is a circular dep thing, often you can get around this by temporarily disabling a use flag, emerging the package, then re-emerging with the flag back on. In this case, either the tcl or tk (or both) flags. _________________ Thomas S. Howard |
|
| Back to top |
|
 |
genterminl Guru


Joined: 12 Feb 2005 Posts: 525 Location: Connecticut, USA
|
Posted: Wed Jun 13, 2007 12:34 pm Post subject: |
|
|
I have the same problem. ppracer 0.3.1 (emerged a while ago) fails to run with "ppracer: error while loading shared libraries: libtcl8.4.so: cannot open shared object file: No such file or directory" and trying to re-emerge (revdep-rebuild or manual) fails with "cannot find -ltcl8.4"
"ldconfig -p | grep tcl" shows "libtcl8.4g.so (libc6)" but no plain libtcl8.4.so.
I have dev-lang/tcl-8.4.14 installed, and 8.4.9 is the only other version I see in portage. |
|
| Back to top |
|
 |
didl Retired Dev


Joined: 09 Sep 2003 Posts: 1106 Location: Pittsburgh, PA
|
Posted: Wed Jun 13, 2007 12:55 pm Post subject: |
|
|
I am not sure right now why you have libtcl8.4g.so on your system;
this almost certainly should be libtcl8.4.so. If re-compiling the
package doesn't help I'd file a bug with the tcltk folks; there's
probably something screwed up with the autotools. |
|
| Back to top |
|
 |
radub n00b


Joined: 23 Feb 2005 Posts: 25
|
Posted: Wed Jun 13, 2007 6:04 pm Post subject: Solved? |
|
|
I upgraded back to the 8.5 versions, in order to see which ebuild wants them downgraded. But cron ran emerge --sync overnight, and it seems that there are no more ebuilds wanting to downgrade. So I ran revdep-rebuild again, in order to fix my apps, and everything looks fine now.
genterminl, if you want to try to use what I've used, go here and download the ebuild in the first post (tcl and tk 8.5a5). Don't use ver 8.5a6, it has a memory leak. |
|
| Back to top |
|
 |
genterminl Guru


Joined: 12 Feb 2005 Posts: 525 Location: Connecticut, USA
|
Posted: Sun Jun 17, 2007 6:14 pm Post subject: |
|
|
A bug was already posted, but against ppracer, not tcl. I've added a comment with some additional information.
I have not tried rebuilding tcl yet (I'm doing an emerge --sync now, so I'll see if there is anything new that might help) but, as I added to the bug:
"ldconfig -p | grep tcl" shows /usr/lib/libtcl8.4g.so.
"equery belongs libtcl8.4g.so" shows dev-lang/tcl-8.4.14, but
"equery belongs libtcl8.4.so" shows nothing.
I'm not sure if this is simply a typo in the tcl source or something else. Right now, I'd prefer not to try upgrading to a version not in portage yet, although I may try it if I get some free time. Thanks for the suggestion, though. |
|
| Back to top |
|
 |
genterminl Guru


Joined: 12 Feb 2005 Posts: 525 Location: Connecticut, USA
|
Posted: Tue Jun 19, 2007 10:56 pm Post subject: |
|
|
| Rebuilding tcl and/or ppraces does not help. In rebuilding tcl, I found that if optimization is turned on (I have -O2 in my CFLAGS) then the "g" is appended to the library name. It looks like the tcl ebuild does a symlink from libtcl.so to libtcl8.4.so, but doesn't account for actually having libtcl8.4g.so. I have now filed a new bug against tcl (although it looks like tk has exactly the same problem. |
|
| Back to top |
|
 |
Tujo n00b

Joined: 01 Nov 2006 Posts: 3
|
Posted: Tue Aug 28, 2007 4:02 pm Post subject: |
|
|
I had the same problem. I solved it running fsck on root partition and reemerging portage and gcc. _________________ Daniele "Tujo" Turetti |
|
| Back to top |
|
 |
|