I am trying to get NCL 5.0.0 built on my cluster. Here are the
specifics of my environment:
OS: Redhat RHEL 4.4
Kernel: 2.6.20.20
Arch: x86_64
Compiler: Intel 9.1 (eventually PGI 7.1-3)
I have worked through most of the issues, but I am still getting
stuck on some.
When first configuring the build, I copied config/LINUX.64.INTEL
to config/LINUX. It appears that some of the options in this
file don't match the compiler I have.
Here are the changes I made to the LINUX.64.INTEL file.
[root_at_wfe0 ncl]# diff ncl_ncarg-5.0.0-intel91/config/LINUX ncl_ncarg-5.0.0/config/LINUX.64.INTEL
32,34c32,34
< #define CtoFLibraries -lm
< #define CcOptions -ansi
< #define FcOptions
--- > #define CtoFLibraries -lm -lifcore > #define CcOptions -ansi -size_lp64 > #define FcOptions -size_lp64 41c41 < #define ArchRecLibSearch -L/usr/X11R6/lib64 --- > #define ArchRecLibSearch -L/usr/X11R6/lib Questions: 1) What is ifcore? 2) Why is -size_lp64 included? Isn't this an Itanium option? 3) One option not shown here is the HdfDefines. Why does the x86_64 file have -DIA64? Does that just mean 64-bit, or should there be a different setting for x86_64? After making those changes, I ran ./Configure. I specified the installation path and the packages I wanted to use. The following config/Site.local file was created. ------------------------------------------------------- #ifdef FirstSite #endif /* FirstSite */ #ifdef SecondSite #define YmakeRoot /opt/ncl/5.0.0_intel_9.1 #define LibSearch -L/usr/X11R6/lib64 -L/opt/netcdf/3.6.1_intel_9.1/lib -L/opt/udunits/1.12.4/lib -L/opt/hdf4/2r1_intel_9.1/lib -L/opt/netcdf/3.6.1_intel_9.1/lib #define IncSearch -I/usr/X11R6/include -I/opt/netcdf/3.6.1_intel_9.1/include -I/opt/udunits/1.12.4/include -I/opt/hdf4/2r1_intel_9.1/include -I/opt/netcdf/3.6.1_intel_9.1/include #define BuildTRIANGLE FALSE #define BuildHDFEOS FALSE #define HDFEOSlib #define BuildV5D FALSE #define V5Dlib #define BuildGRIB2 FALSE ------------------------------------------------------- Including the paths to my packages solved many of my problems, but a few exist. The problems are listed below. Any tips on fixing them would be appreciated. ------------------------------------ Problem 1: Where is the function giargs? icc -ansi -O2 -o ictrans main.o ../../../.././ncarview/src/lib/libictrans/libictrans.o ../../../.././ncarview/src/lib/libctrans/libctrans.o -L../../../.././ncarview/src/lib/libcgm -lcgm -L../../../.././ncarview/src/lib/libncarg_ras -lncarg_ras -L../../../.././common/src/libncarg_c -lncarg_c -L/opt/ncl/5.0.0_intel_9.1/lib -L/usr/X11R6/lib64 -L/opt/netcdf/3.6.1_intel_9.1/lib -L/opt/udunits/1.12.4/lib -L/opt/hdf4/2r1_intel_9.1/lib -L/opt/netcdf/3.6.1_intel_9.1/lib -lXpm -lX11 -lXext -lmfhdf -ldf -ljpeg -lz -lm ../../../.././ncarview/src/lib/libictrans/libictrans.o(.text+0x6bd7): In function `giargs_': : undefined reference to `for_cpystr' make[5]: *** [ictrans] Error 1 ------------------------------------- Problem 2: I configured the build not to use the triangle software. Why is it still referenced? icc -ansi -O2 -I../../../.././include -I/usr/X11R6/include -I/opt/netcdf/3.6.1_intel_9.1/include -I/opt/udunits/1.12.4/include -I/opt/hdf4/2r1_intel_9.1/include -I/opt/netcdf/3.6.1_intel_9.1/include -DLinux -DSYSV -D_POSIX_SOURCE -D_XOPEN_SOURCE -DByteSwapped -DNeedFuncProto -c -o CnTriMeshRenderer.o CnTriMeshRenderer.c CnTriMeshRenderer.c(34): catastrophic error: could not open source file "ncarg/hlu/triangle.h" #include <ncarg/hlu/triangle.h> ^ compilation aborted for CnTriMeshRenderer.c (code 4) make[5]: *** [CnTriMeshRenderer.o] Error 4 ------------------------------------- Problem 3: wrapit77 doesn't build correctly. icc -ansi -O2 -o wrapit77 y.tab.o lex.yy.o Symbol.o wrapit.o -L/opt/ncl/5.0.0_intel_9.1/lib -L/usr/X11R6/lib64 -L/opt/netcdf/3.6.1_intel_9.1/lib -L/opt/udunits/1.12.4/lib -L/opt/hdf4/2r1_intel_9.1/lib -L/opt/netcdf/3.6.1_intel_9.1/lib -lfl wrapit.o(.text+0x0): In function `yyparse': : multiple definition of `yyparse' y.tab.o(.text+0x0): first defined here wrapit.o(.rodata+0x900): multiple definition of `yydefred' y.tab.o(.rodata+0x900): first defined here wrapit.o(.rodata+0xb40): multiple definition of `yysindex' y.tab.o(.rodata+0xb40): first defined here wrapit.o(.rodata+0x1220): multiple definition of `yycheck' y.tab.o(.rodata+0x1220): first defined here wrapit.o(.rodata+0xf60): multiple definition of `yytable' y.tab.o(.rodata+0xf60): first defined here wrapit.o(.rodata+0xd20): multiple definition of `yyrindex' y.tab.o(.rodata+0xd20): first defined here wrapit.o(.rodata+0x7e0): multiple definition of `yylen' y.tab.o(.rodata+0x7e0): first defined here wrapit.o(.bss+0x0): multiple definition of `theparam' y.tab.o(.bss+0x0): first defined here wrapit.o(.text+0x4da4): In function `CType': : multiple definition of `CType' y.tab.o(.text+0x4da4): first defined here wrapit.o(.text+0x4e06): In function `WMakeListNode': : multiple definition of `WMakeListNode' y.tab.o(.text+0x4e06): first defined here wrapit.o(.text+0x4e1c): In function `FType': : multiple definition of `FType' y.tab.o(.text+0x4e1c): first defined here wrapit.o(.text+0x4e40): In function `NType': : multiple definition of `NType' y.tab.o(.text+0x4e40): first defined here wrapit.o(.rodata+0x6c0): multiple definition of `yylhs' wrapit.o(.rodata+0x6c0): multiple definition of `yylhs' y.tab.o(.rodata+0x6c0): first defined here wrapit.o(.rodata+0xf00): multiple definition of `yygindex' y.tab.o(.rodata+0xf00): first defined here wrapit.o(.rodata+0xae0): multiple definition of `yydgoto' y.tab.o(.rodata+0xae0): first defined here wrapit.o(.text+0x4fb0): In function `yyerror': : multiple definition of `yyerror' y.tab.o(.text+0x4fb0): first defined here ld: skipping incompatible /usr/lib/libm.so when searching for -lm ld: skipping incompatible /usr/lib/libm.a when searching for -lm ld: skipping incompatible /usr/lib/libc.so when searching for -lc ld: skipping incompatible /usr/lib/libc.a when searching for -lc ld: skipping incompatible /usr/lib/libdl.so when searching for -ldl ld: skipping incompatible /usr/lib/libdl.a when searching for -ldl ld: skipping incompatible /usr/lib/libc.so when searching for -lc ld: skipping incompatible /usr/lib/libc.a when searching for -lc y.tab.o(.text+0x536): In function `yyparse': : undefined reference to `DoDimsizes' y.tab.o(.text+0x570): In function `yyparse': : undefined reference to `DoDimsizes' y.tab.o(.text+0x5aa): In function `yyparse': : undefined reference to `DoTotal' y.tab.o(.text+0x640): In function `yyparse': : undefined reference to `DoDimsizes' y.tab.o(.text+0x67a): In function `yyparse': : undefined reference to `DoDimsizes' y.tab.o(.text+0x6b4): In function `yyparse': : undefined reference to `DoTotal' y.tab.o(.text+0x721): In function `yyparse': : undefined reference to `DoDimsizes' y.tab.o(.text+0x75b): In function `yyparse': : undefined reference to `DoDimsizes' y.tab.o(.text+0x795): In function `yyparse': : undefined reference to `DoTotal' y.tab.o(.text+0x7fe): In function `yyparse': : undefined reference to `NewParamLoc' y.tab.o(.text+0x811): In function `yyparse': : undefined reference to `DoDimsizes' y.tab.o(.text+0x871): In function `yyparse': ### Many more references like this deleted. Thanks, Craig -- Craig Tierney (craig.tierney_at_noaa.gov) _______________________________________________ ncl-install mailing list ncl-install_at_ucar.edu http://mailman.ucar.edu/mailman/listinfo/ncl-installReceived on Thu Apr 10 2008 - 14:15:29 MDT
This archive was generated by hypermail 2.2.0 : Fri Apr 11 2008 - 11:01:49 MDT