Tony,

It looks like you system is really old. Will Intel 11 work with such old 
version of gcc?

Anyway... I would try to add -fPIC to the gcc compilation flags first, and then 
if it doesn't work, I would use --disable-shared and try to build just HDF5 
static libraries.

And I assume szip is shared, right? If not, you will need to build static szip 
using -fPIC flag too.

Elena


On Feb 7, 2011, at 7:55 AM, Tony Stocker wrote:

> 
> I'm trying to compile HDF5-1.8.5 from source tarball.  I've successfully done 
> this on other systems, however those systems have slightly newer operating 
> systems and software.  I'm at a loss on where to proceed next in trying to 
> fix this.  I've tried to provide all the relevant (and likely quite a bit 
> irrelevant) information below.
> 
> Info on the system that the compile is failing on, and the compilation 
> process:
> ---------------------------
> System & software specifics:
> ---------------------------
> OS: CentOS/Scyld Clusterware
>       # cat /etc/redhat-release
>       CentOS release 4.8 (Final)
>       # cat /etc/scyld-release
>       Scyld Beowulf release 43 (43-431g0010 200910051451)
> szip: 2.1 (from source)
> zlib: 1.2.1.2-1.2 (from vendor RPM yum repository)
> f77: Intel Fortran 11.1.073 ifort
> gcc: version 3.4.6 20060404 (Red Hat 3.4.6-11)
> gcc 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 
> --disable-libunwind-exceptions --enable-java-awt=gtk 
> --host=x86_64-redhat-linux
> Thread model: posix
> 
> -------------------
> Compilation process:
> -------------------
> source /usr/local/intel/Compiler/11.1/073/bin/ifortvars.sh intel64
> 
> export F77=ifort ; export F9X=ifort ; export FFLAGS="-mcmodel=medium" ; 
> export CFLAGS="-mcmodel=medium -O" ; export 
> LD_LIBRARY_PATH=${LD_LIBRARY_PATH}/usr/local/szip/lib ; export LDFLAGS="-lm"
> 
> ./configure --prefix=/usr/local/HDF5-1.8.5 --enable-fortran --enable-cxx 
> --with-szlib=/usr/local/szip/include,/usr/local/szip/lib > configure.out.log 
> 2>&1
> 
> make > make.out.log 2>&1
> 
> ------------------------------------
> Error Message from make.out.log file:
> ------------------------------------
> /usr/bin/ld: .libs/H5checksum.o: relocation R_X86_64_32S against `a local 
> symbol' can not be used when m
> aking a shared object; recompile with -fPIC
> .libs/H5checksum.o: could not read symbols: Bad value
> collect2: ld returned 1 exit status
> make[2]: *** [libhdf5.la] Error 1
> make[2]: Leaving directory `/usr/local/src/hdf5-1.8.5/src'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/usr/local/src/hdf5-1.8.5/src'
> make: *** [all-recursive] Error 1
> 
> 
> I've searched the HDF forums and found similar relocation R_X86_64_32S 
> messages regarding the zlib (20090902 dated post) and mpich (20100224 dated 
> post.)  However I haven't found any reference to this issue in regards to the 
> H5checksum, so I'm not sure which dependent program needs to be recompiled 
> with -fPIC, which seems to be the underlying problem.  I looked further up in 
> the output file for any relevant information regarding H5checksum's 
> compilation but it all looks normal to me:
> 
> libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I/usr/local/szip/include 
> -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_BSD_SOURCE -D_POSIX_SOURCE 
> -DNDEBUG -UH5_DEBUG_API -std=c99 -pedantic -Wall -Wextra -Wundef -Wshadow 
> -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings 
> -Wconversion -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes 
> -Wmissing-declarations -Wredundant-decls -Wnested-externs -Winline 
> -Wno-long-long -Wfloat-equal -Wmissing-format-attribute -Wmissing-noreturn 
> -Wpacked -Wdisabled-optimization -Wendif-labels -Wdeclaration-after-statement 
> -Wold-style-definition -Winvalid-pch -O3 -fomit-frame-pointer 
> -finline-functions -mcmodel=medium -O -MT H5checksum.lo -MD -MP -MF 
> .deps/H5checksum.Tpo -c H5checksum.c  -o .libs/H5checksum.o
> 
> 
> I use the same compilation process on CentOS/Clusterware 5.x systems 
> successfully.  These systems have slightly newer software in some cases. 
> Where s/w differs from that listed above, I've listed below.  The compilation 
> process, including options and export statements is identical.
> 
> Information on the systems where compilation seems to work fine:
> OS: CentOS/Scyld Clusterware
>       # cat /etc/redhat-release ; cat /etc/scyld-release
>       CentOS release 5.5 (Final)
>       Scyld ClusterWare release 5.5.0 (5.5.0-550g0007 201010111426)
> zlib: 1.2.3-3 (from vendor RPM yum repository)
> gcc: version 4.1.2 20080704 (Red Hat 4.1.2-48)
> gcc specs:
> Configured with: ../configure --prefix=/usr --mandir=/usr/share/man 
> --infodir=/usr/share/info --enable-shared --enable-threads=posix 
> --enable-checking=release --with-system-zlib --enable-__cxa_atexit 
> --disable-libunwind-exceptions --enable-libgcj-multifile 
> --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk 
> --disable-dssi --enable-plugin 
> --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic 
> --host=x86_64-redhat-linux
> Thread model: posix
> 
> 
> So I'm a bit at a loss on what to do next.  The compilation process I've been 
> using on our newer systems is failing on an older one, which unfortunately 
> cannot be upgraded any time soon yet which needs the same version of HDF 5 on 
> it.
> 
> Any advice or suggestions?  I appreciate it.
> 
> -Tony
> 
> -- 
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
> 
> 
> _______________________________________________
> Hdf-forum is for HDF software users discussion.
> [email protected]
> http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org


_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org

Reply via email to