Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 11690 - stx not found: smalltalkx (~x86) fails to run (with workaround)
Summary: stx not found: smalltalkx (~x86) fails to run (with workaround)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: Low minor (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-12-06 13:33 UTC by katerina
Modified: 2003-06-07 03:03 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description katerina 2002-12-06 13:33:22 UTC
I'm using primarily stable (x86) gentoo, but occasionally emerge an unstable
package.  After (sucessfully) emerging smalltalkx, I attempted to run it and got
the following error:
smalltalk[warning]: ignore wrong STX_LIBDIR setting
/bin/sh: type: stx: not found
/usr/bin/smalltalk: exec: stx: not found
[1] + exit 127 smalltalk

If I add /opt/smalltalk/4.1.4/bin to $PATH, I get the same warning and exit
code, but the error is:
stx: error while loading shared libraries: libbasic.so: cannot open shared
object file: No such file or directory

If I run ldd on stx, the majority of the libraries aren't found. 

STX_LIBDIR is originally set to
/var/tmp/portage/smalltalkx-4.1.4/image//opt/smalltalk/4.1.4/lib
This appears broken for a fully installed package.

A workaround is to correctly set STX_LIBDIR and STX_BINDIR.  At this point,
there is still a warning(/bin/sh: type: stx: not found), but it is not fatal,
and smalltalkx appears to start correctly and run.  This works regardless of
whether stx is in the $PATH.

A full solution would automatically have smalltalk have the correct values for
these variables, but I've not dug around enough to figure out how to do that, sorry.
Comment 1 Karl Trygve Kalleberg (RETIRED) gentoo-dev 2003-05-03 08:25:33 UTC
Can't get around to fixing this anytime soon, sorry.
Comment 2 Martin Holzer (RETIRED) gentoo-dev 2003-05-09 15:36:50 UTC
Marko any ideas on this ?
Comment 3 Marko Mikulicic 2003-05-10 10:17:57 UTC
Hi,

I think the best way is to fix the /usr/bin/smalltalk file with:

STX=stx
#### here ####
STX_LIBDIR=${STX_LIBDIR-/opt/smalltalk/4.1.4/lib}
STX_BINDIR=.
DEBUGGER=

if test -x `dirname $0`/stx; then
    STX_BINDIR=`dirname $0`
    STX=$STX_BINDIR/stx
#### and here ####
    cd $STX_BINDIR
fi


I tried to add
dosed "s:STX_LIBDIR-/var/tmp/portage/smalltalkx-4.1.4/image/:STX_LIBDIR-:g" ${D}/opt/smalltalk/${PV}/bin/smalltalk
        dosed "s:#    cd $STX_BINDIR:    cd $STX_BINDIR:g" ${D}/opt/smalltalk/${PV}/bin/smalltalk

but without success. Where can I find documentation on "dosed" ?

Marko
Comment 4 Seemant Kulleen (RETIRED) gentoo-dev 2003-06-07 03:03:05 UTC
katerina, sorry for the extended delay on this.  if you emerge sync and re-emerge this, you will find that it will work.  You may have to run: env-update && source /etc/profile though.