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

20000921: Installing McIDAS on Linux



>From: Erick Lorenz <address@hidden>
>Organization: UC Davis
>Keywords: 200009220039.e8M0dBb07890 McIDAS-X 7.60 Linux

Erick,

>I am installing McIDAS 7.6 on a "new"* Linux system.  The make all and
>testing phases went alright.
>
>Everything was going along smoothly until I got to the step where I enter:
>
>       make install.mcxall
>
>I immediatly got an error that:
>
>       Lack files needed doing a make install: mcwish
>       Must do a 'make' before make install
>
>I tried running make again and it gave the message
>
>       link makewish: done
>
>but rerunning the make install.mcxall gave the same message.  I also can't
>find any mcwish files in the mcidas7.6 file tree.
>
>Any suggestions?

The file ~mcidas/mcidas7.6/src/makelog can be searched to see why the link
of mcwish failed.  On your system this turned out to be caused by
the link line not referencing the Tcl or Tk libraries:

./tclcomp ./mccomp -O -s -o mcwish wishcrex.o wisherrh.o wishinit.o wishmcid.o 
wishrglb.o wishutil.o wishxinf.o wishxwin.o tkAppInit.o -L. -lmcidasnvUtil.o 
tkCamcfc -s -Wl,-rpath,/home/mcidas/tcl/lib -O -o mcwish wishcrex.o wisherrh.o 
wishinit.o wishmcid.o wishrglb.o wishutil.o wishxinf.o wishxwin.o tkAppInit.o 
-L. -L/usr/X11R6/lib -L/usr/local/lib -L/usr/X11R6/lib -lmcidas -lX11 -ldl -lm 
-ldl -lm
c-lf2c -ldl -lm
wishcrex.o: In function `Tk_CreateWindowFromExisting':mcidas7.6/tk/unix -ltk8.0 
wishcrex.o(.text+0x338): undefined reference to `Tk_CreateWindowFromPath'ldl 
-lmwishcrex.o(.text+0x372): undefined reference to `Tk_MakeWindowExist'f/libsrc 
arg
wishcrex.o(.text+0x473): undefined reference to `TkWmAddToColormapWindows'
 ...

The only way that this can happen is if the copy of tclcomp that is being
used is incorrect.  Since RedHat 5.2 and on does not require one to run
tclconfig (added for RedHat 4.x problems), I am assuming that you ran
tclconfig at the beginning of the make, and this caused an incorrect
copy of tclcomp to be made.

To correct things, I did the following:

<login as 'mcidas'>
cd mcidas7.6/tcl/unix
make distclean
cd ~/mcidas7.6/tk/unix
make distclean
cd ~/mcidas7.6/src
rm tclcomp
make 

The Tcl/Tk stuff was rebuilt and a new copy of tclcomp was created from
tclcomp.sh (not tclconfig).  This time, the link of mcwish _did_ specify
the Tcl and Tk libraries, so the executable was created:

./tclcomp ./mccomp -O -s -o mcwish wishcrex.o wisherrh.o wishinit.o wishmcid.o w
ishrglb.o wishutil.o wishxinf.o wishxwin.o tkAppInit.o -L. -lmcidas
mcfc -s -Wl,-rpath,/home/mcidas/tcl/lib -O -o mcwish wishcrex.o wisherrh.o wishi
nit.o wishmcid.o wishrglb.o wishutil.o wishxinf.o wishxwin.o tkAppInit.o -L. -L/
usr/local/mcidas/mcidas7.6/tk/unix -L/usr/local/mcidas/mcidas7.6/tcl/unix -L/hom
e/mcidas/tcl/lib -L/home/mcidas/tcl/lib -L/usr/X11R6/lib -L/usr/local/lib -L/usr
/X11R6/lib -lmcidas -ltk8.0 -ltcl8.0 -lX11 -ldl -lm -ldl -lm -lf2c -ldl -lm

ls -alt mcwish
-rwxr-xr-x    1 mcidas   unidata    546764 Sep 21 18:01 mcwish

Your 'make install.mcxall' should now work as expected.

>* The computer is not new but I installed Redhat Linux 6.2 from scratch.

OK.

Tom