Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 107161 - hdf5-1.6.4 can't compile if MPI support is enabled
Summary: hdf5-1.6.4 can't compile if MPI support is enabled
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-09-25 04:13 UTC by Michael Korbakov
Modified: 2006-06-27 19:35 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Korbakov 2005-09-25 04:13:16 UTC
Tried both with LamMPI and MPICH. The same error message.

...........................
(cd . && ln -s H5Tvlen.lo H5Tvlen.o)
(cd . && ln -s H5TS.lo H5TS.o)
(cd . && ln -s H5V.lo H5V.o)
(cd . && ln -s H5Z.lo H5Z.o)
(cd . && ln -s H5Zdeflate.lo H5Zdeflate.o)
(cd . && ln -s H5Zfletcher32.lo H5Zfletcher32.o)
(cd . && ln -s H5Zshuffle.lo H5Zshuffle.o)
(cd . && ln -s H5Zszip.lo H5Zszip.o)
/usr/bin/mpicc -shared  H5.lo H5A.lo H5AC.lo H5B.lo H5C.lo H5D.lo H5Dcontig.lo
H5Dcompact.lo H5Defl.lo H5Dio.lo H5Distore.lo H5Dmpio.lo H5Dselect.lo H5Dtest.lo
H5E.lo H5F.lo H5Fdbg.lo H5FD.lo H5FDcore.lo H5FDfamily.lo H5FDgass.lo H5FDlog.lo
H5FDmpi.lo H5FDmpio.lo H5FDmpiposix.lo H5FDmulti.lo H5FDsec2.lo H5FDsrb.lo
H5FDstdio.lo H5FDstream.lo H5FL.lo H5FO.lo H5FS.lo H5G.lo H5Gent.lo H5Gnode.lo
H5Gstab.lo H5HG.lo H5HGdbg.lo H5HL.lo H5HLdbg.lo H5HP.lo H5I.lo H5MF.lo H5MM.lo
H5O.lo H5Oattr.lo H5Obogus.lo H5Ocont.lo H5Odtype.lo H5Oefl.lo H5Ofill.lo
H5Olayout.lo H5Omtime.lo H5Oname.lo H5Onull.lo H5Opline.lo H5Osdspace.lo
H5Oshared.lo H5Ostab.lo H5P.lo H5Pdcpl.lo H5Pdxpl.lo H5Pfapl.lo H5Pfcpl.lo
H5Ptest.lo H5R.lo H5RC.lo H5RS.lo H5S.lo H5Sall.lo H5Shyper.lo H5Smpio.lo
H5Snone.lo H5Spoint.lo H5Sselect.lo H5Stest.lo H5SL.lo H5ST.lo H5T.lo
H5Tarray.lo H5Tbit.lo H5Tcommit.lo H5Tcompound.lo H5Tconv.lo H5Tcset.lo
H5Tenum.lo H5Tfields.lo H5Tfixed.lo H5Tfloat.lo H5Tinit.lo H5Tnative.lo
H5Toffset.lo H5Topaque.lo H5Torder.lo H5Tpad.lo H5Tprecis.lo H5Tstrpad.lo
H5Tvlen.lo H5TS.lo H5V.lo H5Z.lo H5Zdeflate.lo H5Zfletcher32.lo H5Zshuffle.lo
H5Zszip.lo  -lssl -lcrypto -lz -lm  -Wl,-soname -Wl,libhdf5.so.0 -o
.libs/libhdf5.so.0.0.0
/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/../../../../x86_64-pc-linux-gnu/bin/ld:
/usr/lib/libmpich.a(type_commit.o): relocation R_X86_64_32 against `a local
symbol' can not be used when making a shared object; recompile with -fPIC
/usr/lib/libmpich.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [libhdf5.la] Error 1
make[2]: Leaving directory `/var/tmp/portage/hdf5-1.6.4/work/hdf5-1.6.4/src'
make[1]: *** [lib] Error 1
make[1]: Leaving directory `/var/tmp/portage/hdf5-1.6.4/work/hdf5-1.6.4'
make: *** [all] Error 2

!!! ERROR: sci-libs/hdf5-1.6.4 failed.
!!! Function src_compile, Line 48, Exitcode 2
!!! emake failed
!!! If you need support, post the topmost build error, NOT this status message.


Reproducible: Always
Steps to Reproduce:
1. echo sci-libs/hdf5 >> /etc/portage/package.keywords
2. USE="mpi" emerge hdf5




Portage 2.0.51.22-r2 (default-linux/amd64/2005.0, gcc-3.4.3, glibc-2.3.5-r0,
2.6.12-gentoo-r10 x86_64)
=================================================================
System uname: 2.6.12-gentoo-r10 x86_64 AMD Athlon(tm) 64 Processor 3200+
Gentoo Base System version 1.6.13
dev-lang/python:     2.3.5-r2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   1.5.18-r1
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=k8 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/
/usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/
/usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=k8 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict userpriv usersandbox"
GENTOO_MIRRORS="ftp://ftp.linux.kiev.ua/pub/Linux/Gentoo"
LANG="ru_RU.KOI8-R"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://ftp.linux.kiev.ua/gentoo-portage"
USE="amd64 7zip X aac acpi alsa amarok apache2 apm arts asterisk audiofile avi
bash-completion bitmap-fonts blas bluetooth bzlib cdr crypt dga dvd dvdr emacs
emul-linux-x86 esd ffmpeg fftw firefox flac foomaticdb fortran ftp gif gnutls
gpm gtk gtk2 gtkhtml hal hdf hdf5 iconv icq imagemagick jabber java javascript
jikes jpeg kde kdeenablefinal lapack ldap lm_sensors mad md5sum mikmod mp3 mpeg
mpi mysql nas ncurses netcdf nls nntp nptl oggvorbis opengl pcre pda pdflib png
postgres ppds qt quicktime readline ruby samba socks5 spell ssl subversion svg
tcltk tcpd threads tiff truetype truetype-fonts type1-fonts unicode usb vhosts
vorbis wifi xml xml2 xmms xv xvid zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS
Comment 1 Steve Arnold archtester gentoo-dev 2006-05-21 12:51:13 UTC
The workaround would be to sync up and emerge the new mpich2-1.0.3 ebuild first.  Then you can emerge hdf5 successfully.  I'm working on getting some of this stuff stablized, but it's a long chain of deps, portage is getting pickier, and many of these sci-codes don't seem to do shared libs quite right...
Comment 2 Steve Arnold archtester gentoo-dev 2006-06-27 19:35:49 UTC
The latest HDF5 (1.6.5-r1) has working tests now, and most of the MPI tests pass (using the provided mpd.conf in the portage build tree, but only using the local build host and no virtual filesystem).  It also has fortran 9x support, both detection and a USE flag to enable it; I'm open to suggestions on improvements (but we currently only have ebuild support for gfortran (gcc4) and ifc).

I haven't worked on any other MPI packages, so the above only applies to mpich2-1.0.3-r1, which must also be built with f90 support for the HDF5 f90 stuff to build against it correctly (and possibly 1.0.3 if it correctly detected your f90 compiler).

Please try the updated ebuilds (both hdf5-1.6.5-r1 and mpich2-1.0.3-r1) and file any new bugs accordingly; you can avoid the "virtual/mpi" pulling in other packages by just emerging mpich2 with the desired USE flags prior to emerging hdf5.

Note: the mpich2 internal tests are not yet enabled (feel free to work on it tho :)