[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
20051003: Compiling McIDAS on FC4 64bit
- Subject: 20051003: Compiling McIDAS on FC4 64bit
- Date: Mon, 03 Oct 2005 13:53:50 -0600
>From: =?ISO-8859-1?Q?Christian_Pag=E9?= <address@hidden>
>Organization: UQAM
>Keywords: 200510031831.j93IVMG7009290 McIDAS Fedora Core 4
Hi Christian,
re:
>I am trying to compile McIDAS 2005 on a server running FC4 in 64-bit.
>I have g77 3.2 and gcc 4. I don't have any clue on how to fix it...
>
>The error is:
>(...)
>compile mci_nvpp.for: done
>./mccomp -O -v -g -s -g77 -o mcimage mci.o mci_brie.o mci_buff.o
>mci_cmap.o mci_comb.o mci_cpfl.o mci_curs.o mci_evnt.o mci_frfl.o
>mci_glbl.o mci_rsrc.o mci_updt.o mci_visl.o mci_nvpp.o -L.
>-L/usr/X11R6/lib64 -lmcidas -lXext -lX11
>mccomp: Using default optimizations
>g77 -v -g -s -O -o mcimage mci.o mci_brie.o mci_buff.o mci_cmap.o
>mci_comb.o mci_cpfl.o mci_curs.o mci_evnt.o mci_frfl.o mci_glbl.o
>mci_rsrc.o mci_updt.o mci_visl.o mci_nvpp.o -L. -L/usr/X11R6/lib64
>-L/usr/X11R6/lib -lmcidas -lXext -lX11 -ldl -lm
>Driving: g77 -v -g -s -O -o mcimage mci.o mci_brie.o mci_buff.o
>mci_cmap.o mci_comb.o mci_cpfl.o mci_curs.o mci_evnt.o mci_frfl.o
>mci_glbl.o mci_rsrc.o mci_updt.o mci_visl.o mci_nvpp.o -L.
>-L/usr/X11R6/lib64 -L/usr/X11R6/lib -lmcidas -lXext -lX11 -ldl
>-lfrtbegin -lg2c -lm -lg2c -lm -shared-libgcc
>Reading specs from /usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/specs
>Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
>--infodir=/usr/share/info --enable-shared --enable-threads=posix
>--disable-checking --with-system-zlib --enable-__cxa_atexit
>--enable-languages=c,c++,f77 --disable-libgcj
>--host=x86_64-redhat-linux
>Thread model: posix
>gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-47.fc4)
> /usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/collect2 --eh-frame-hdr -m
>elf_x86_64 -Y P,/usr/lib64 -dynamic-linker /lib64/ld-linux-x86-64.so.2
>-o mcimage -s
>/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/../../../../lib64/crt1.o
>/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/../../../../lib64/crti.o
>/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/crtbegin.o -L.
>-L/usr/X11R6/lib64 -L/usr/X11R6/lib
>-L/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3
>-L/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/../../../../lib64
>-L/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/../../.. -L/lib/../lib64
>-L/usr/lib/../lib64 mci.o mci_brie.o mci_buff.o mci_cmap.o mci_comb.o
>mci_cpfl.o mci_curs.o mci_evnt.o mci_frfl.o mci_glbl.o mci_rsrc.o
>mci_updt.o mci_visl.o mci_nvpp.o -lmcidas -lXext -lX11 -ldl -lfrtbegin
>-lg2c -lm -lg2c -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc
>/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/crtend.o
>/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/../../../../lib64/crtn.o
>mci_evnt.o(.text+0x9c6): In function `main_event':
>/kepler/mcidas/mcidas2005/src/mci_evnt.c:1403: undefined reference to `a_'
>./libmcidas.a(prescn.o)(.text+0x70): In function `prescn_':
>/kepler/mcidas/mcidas2005/src/prescn.f:67: undefined reference to `a_'
>collect2: ld returned 1 exit status
>link mcimage: FAILED
I have been seeing this failure more and more under Linux as machines
and the OS get faster. What is happening is that the object modules
that are destined for the McIDAS (libmcidas.a) or SDI (libsdi.a)
libraries are not being correctly added to the library, so linking will
fail with errors like what you are reporting ('undefined reference').
This is apparently being caused by 'make' trying to be faster by
running simultaneous processes. Interestingly, I _never_ see these
errors on my home development machine, a _slow_ 700 Mhz PIII running
FC4 32-bit.
You can force 'make' to run in "single job mode" (to serialize the build
process) as follows:
<as 'mcidas'>
cd ~mcidas/mcidas2005/src
make clobber
make -j 1 <- build McIDAS-X
-- or --
make -j 1 all <- build McIDAS-X and McIDAS-XCD
Please let me know if this works for you (it just worked for me on a
dual 3.2 Ghz EM64T machine running FC4 64-bit).
Cheers,
Tom
--
+-----------------------------------------------------------------------------+
* Tom Yoksas UCAR Unidata Program *
* (303) 497-8642 (last resort) P.O. Box 3000 *
* address@hidden Boulder, CO 80307 *
* Unidata WWW Service http://www.unidata.ucar.edu/*
+-----------------------------------------------------------------------------+