[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20011219: Tcl/Tk Problems with McIDAS 7.8 and RH 7.2



>From:  Steve Ochani <address@hidden>
>Organization:  SUNY Nassau
>Keywords:  200112191739.fBJHdcN23008 McIDAS-X 7.8 RedHat 7.2 Tcl/Tk

Steve,

>I've been able to build mcidas 7.8 with no problems on a new Redhat
>Linux 7.2 machine (after using f2c from the fortran dir on the
>server).

I have also built the Unidata 7.8x version of McIDAS-X/-XCD on a RedHat
7.2 system and am running it with no problems.

>The problem I have is running mcidas.
>
>At first when I tried to to run it i got the following error message
>
>mcwish: error while loading shared libraries: libtk8.0.so: cannot open shared 
> object file: No 
>such file or directory

Use the 'ldd' command to see what shared libraries are being looked for
and where they should be found.  Here is what I get on my 7.2 system:

/home/mcidas/mcidas7.8/src% ldd mcwish
        libtk8.0.so => /home/mcidas/tcl/lib/libtk8.0.so (0x40018000)
        libtcl8.0.so => /home/mcidas/tcl/lib/libtcl8.0.so (0x400b6000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40137000)
        libdl.so.2 => /lib/libdl.so.2 (0x40215000)
        libm.so.6 => /lib/i686/libm.so.6 (0x40219000)
        libc.so.6 => /lib/i686/libc.so.6 (0x4023c000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

What does 'ldd mcwish' give on your machine(s)?

>I looked in /usr/lib and saw that there was libtk and libtcl version
>was 8.3

>I tried symlinks of
>
>libtk8.0.so -> libtk.so.0
>libtcl8.0.so -> libtcl.so.0
>
>to try fool mcidas into using 8.3
>
>This time when running mcidas I got the error 
>
>mcwish: relocation error: mcwish: undefined symbol: Tk_Main

Recent versions of Linux come with versions of Tcl/Tk that are newer than
the one bundled with McIDAS (8.0.4).  The Tcl/Tk scripts included in
Unidata McIDAS will, for the most part, work with newer versions of
Tcl/Tk, but mcwish will not.  This known problem is not, however, one
that you should be running into.

>I noticed previous version of mcidas (7.6) came with libtk/tcl 8 in its
>tcl/lib dir.

McIDAS includes Tcl/Tk 8.0.4 in the mcidas7.8/tcl and mcidas7.8/tk
subdirectories.  This code is designed to be compiled into shared
libraries in the normal McIDAS build process and used by mcwish instead
of the version that may to be available on the machine.  The Tcl/Tk
shared libraries should get installed with all 'make install' options
(e.g., 'make install', 'make install.mcx', 'make install.mcxall', 'make
install.all'), so you should not be running into this problem.

>I wanted to know if anyone else has had success in solving this problem
>before I try something drastic/dangerous.

I built, installed, and am running the current Unidata 7.8x version of
McIDAS-X/-XCD on RH 7.2, and I didn't have to do anything out of the
ordinary to do so.

At this point, I would recommend that you rebuild and reinstall your
distribution to see if the problem persists or goes away:

<login as 'mcidas'>
cd mcidas7.8/src
make clobber
make all
make install.all

Please let me (address@hidden) know the results of the
rebuild/reinstall.

Tom

>From address@hidden Wed Dec 19 14:27:27 2001
>Cc: address@hidden, address@hidden, address@hidden,
>   address@hidden

On 19 Dec 2001 at 12:31, Tom Yoksas wrote:

> Use the 'ldd' command to see what shared libraries are being looked for
> and where they should be found.  Here is what I get on my 7.2 system:
> 
> /home/mcidas/mcidas7.8/src% ldd mcwish
>       libtk8.0.so => /home/mcidas/tcl/lib/libtk8.0.so (0x40018000)
>       libtcl8.0.so => /home/mcidas/tcl/lib/libtcl8.0.so (0x400b6000)
>       libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40137000)
>       libdl.so.2 => /lib/libdl.so.2 (0x40215000)
>       libm.so.6 => /lib/i686/libm.so.6 (0x40219000)
>       libc.so.6 => /lib/i686/libc.so.6 (0x4023c000)
>       /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
> 

after a make install.mcxall the output of ldd mcwish was the same as
above, before (during test phase before install) the libtk8.0.so
libtcl8.0.so fields were blank

> <login as 'mcidas'>
> cd mcidas7.8/src
> make clobber
> make all
> make install.all

I built 7.8 and seems to run fine now.

Going to try ldm over the week/weekend, hopefully everything goes ok so
I can wipe my current server and install rh 7.2. (i've been testing
everything on a seprate machine)

Thanks