Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 303215 - sci-libs/hdf5-1.8.4-r1 does not compile with USE="mpi fortran"
Summary: sci-libs/hdf5-1.8.4-r1 does not compile with USE="mpi fortran"
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on: 307627
Blocks: 302512
  Show dependency tree
 
Reported: 2010-02-02 13:46 UTC by Oliver Borm
Modified: 2010-06-21 13:43 UTC (History)
3 users (show)

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 Oliver Borm 2010-02-02 13:46:28 UTC
sci-libs/hdf5-1.8.4-r1 does not compile with USE="mpi fortran" and =sys-cluster/openmpi-1.2.9

This is the last part of the compile log. Even complete uninstalling and reemerging hdf5 does not solve the problem.

libtool: link: ( cd ".libs" && rm -f "libh5test_fortran.la" && ln -s "../libh5test_fortran.la" "libh5test_fortran.la" )                                                             
/bin/sh ../../libtool   --mode=link mpif90 -I../../fortran/src -I../../fortran/src   -Wl,-O1 -o fortranlib_test fortranlib_test-fortranlib_test.o fortranlib_test-tH5F.o fortranlib_test-tH5D.o fortranlib_test-tH5R.o fortranlib_test-tH5S.o fortranlib_test-tH5T.o fortranlib_test-tH5VL.o fortranlib_test-tH5Z.o fortranlib_test-tH5Sselect.o fortranlib_test-tH5P.o fortranlib_test-tH5A.o fortranlib_test-tH5I.o fortranlib_test-tH5G.o fortranlib_test-tH5E.o libh5test_fortran.la ../../test/libh5test.la ../../fortran/src/libhdf5_fortran.la ../../src/libhdf5.la -lpthread -lz -lm                                                                                                                                                    
/bin/sh ../../libtool   --mode=link mpif90 -I../../fortran/src -I../../fortran/src   -Wl,-O1 -o fflush1 fflush1.o libh5test_fortran.la ../../test/libh5test.la ../../fortran/src/libhdf5_fortran.la ../../src/libhdf5.la -lpthread -lz -lm                                                                                                                              
libtool: link: mpif90 -I../../fortran/src -I../../fortran/src -Wl,-O1 -o .libs/fflush1 fflush1.o  ./.libs/libh5test_fortran.a ../../test/.libs/libh5test.a ../../fortran/src/.libs/libhdf5_fortran.so /var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/src/.libs/libhdf5.so ../../src/.libs/libhdf5.so -lpthread -lz -lm                                         
libtool: link: mpif90 -I../../fortran/src -I../../fortran/src -Wl,-O1 -o .libs/fortranlib_test fortranlib_test-fortranlib_test.o fortranlib_test-tH5F.o fortranlib_test-tH5D.o fortranlib_test-tH5R.o fortranlib_test-tH5S.o fortranlib_test-tH5T.o fortranlib_test-tH5VL.o fortranlib_test-tH5Z.o fortranlib_test-tH5Sselect.o fortranlib_test-tH5P.o fortranlib_test-tH5A.o fortranlib_test-tH5I.o fortranlib_test-tH5G.o fortranlib_test-tH5E.o  ./.libs/libh5test_fortran.a ../../test/.libs/libh5test.a ../../fortran/src/.libs/libhdf5_fortran.so /var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/src/.libs/libhdf5.so ../../src/.libs/libhdf5.so -lpthread -lz -lm                                                               
/bin/sh ../../libtool   --mode=link mpif90 -I../../fortran/src -I../../fortran/src   -Wl,-O1 -o fflush2 fflush2.o libh5test_fortran.la ../../test/libh5test.la ../../fortran/src/libhdf5_fortran.la ../../src/libhdf5.la -lpthread -lz -lm                                                                                                                              
libtool: link: mpif90 -I../../fortran/src -I../../fortran/src -Wl,-O1 -o .libs/fflush2 fflush2.o  ./.libs/libh5test_fortran.a ../../test/.libs/libh5test.a ../../fortran/src/.libs/libhdf5_fortran.so /var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/src/.libs/libhdf5.so ../../src/.libs/libhdf5.so -lpthread -lz -lm                                         
/bin/sh ../../libtool   --mode=link mpif90 -I../../fortran/src -I../../fortran/src   -Wl,-O1 -o fortranlib_test_1_8 fortranlib_test_1_8.o tH5F.o tH5O.o tH5A_1_8.o tH5G_1_8.o libh5test_fortran.la ../../test/libh5test.la ../../fortran/src/libhdf5_fortran.la ../../src/libhdf5.la -lpthread -lz -lm                                                                  
libtool: link: mpif90 -I../../fortran/src -I../../fortran/src -Wl,-O1 -o .libs/fortranlib_test_1_8 fortranlib_test_1_8.o tH5F.o tH5O.o tH5A_1_8.o tH5G_1_8.o  ./.libs/libh5test_fortran.a ../../test/.libs/libh5test.a ../../fortran/src/.libs/libhdf5_fortran.so /var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/src/.libs/libhdf5.so ../../src/.libs/libhdf5.so -lpthread -lz -lm                                                                                                                                                                 
make[2]: Leaving directory `/var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/fortran/test'                                                                                   
Making all in testpar                                                                                                                                                               
make[2]: Entering directory `/var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/fortran/testpar'                                                                               
mpif90 -I../../fortran/src -I../../fortran/test -I../../fortran/src  -c -o ptest.o ptest.f90                                                                                        
mpif90 -I../../fortran/src -I../../fortran/test -I../../fortran/src  -c -o hyper.o hyper.f90                                                                                        
mpif90 -I../../fortran/src -I../../fortran/test -I../../fortran/src  -c -o mdset.o mdset.f90                                                                                        
Error: Can't open included file 'mpif.h'                                                                                                                                            
Error: Can't open included file 'mpif.h'                                                                                                                                            
Error: Can't open included file 'mpif.h'                                                                                                                                            
hyper.f90:96.49:                                                                                                                                                                    

  CALL h5pset_fapl_mpio_f(fapl_id, MPI_COMM_WORLD, MPI_INFO_NULL, hdferror)
                                                 1                         
Error: Symbol 'mpi_comm_world' at (1) has no IMPLICIT type                 
hyper.f90:96.64:                                                           

  CALL h5pset_fapl_mpio_f(fapl_id, MPI_COMM_WORLD, MPI_INFO_NULL, hdferror)
                                                                1          
Error: Symbol 'mpi_info_null' at (1) has no IMPLICIT type                  
make[2]: *** [hyper.o] Error 1                                             
make[2]: *** Waiting for unfinished jobs....                               
mdset.f90:93.49:                                                           

  CALL h5pset_fapl_mpio_f(fapl_id, MPI_COMM_WORLD, MPI_INFO_NULL, hdferror)
                                                 1                         
Error: Symbol 'mpi_comm_world' at (1) has no IMPLICIT type                 
mdset.f90:93.64:                                                           

  CALL h5pset_fapl_mpio_f(fapl_id, MPI_COMM_WORLD, MPI_INFO_NULL, hdferror)
                                                                1
Error: Symbol 'mpi_info_null' at (1) has no IMPLICIT type
ptest.f90:42.36:

  CALL mpi_comm_rank( MPI_COMM_WORLD, mpi_rank, mpierror )
                                    1
Error: Symbol 'mpi_comm_world' at (1) has no IMPLICIT type
ptest.f90:39.31:

  IF (mpierror .NE. MPI_SUCCESS) THEN
                               1
Error: Symbol 'mpi_success' at (1) has no IMPLICIT type
make[2]: *** [mdset.o] Error 1
make[2]: *** [ptest.o] Error 1
make[2]: Leaving directory `/var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/fortran/testpar'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/fortran'
make: *** [all-recursive] Error 1
 * ERROR: sci-libs/hdf5-1.8.4-r1 failed:
 *   emake failed
 *
 * Call stack:
 *     ebuild.sh, line   54:  Called src_compile
 *   environment, line 2941:  Called _eapi2_src_compile
 *     ebuild.sh, line  646:  Called die
 * The specific snippet of code:
 *              emake || die "emake failed"
 *
 * If you need support, post the output of 'emerge --info =sci-libs/hdf5-1.8.4-r1',
 * the complete build log and the output of 'emerge -pqv =sci-libs/hdf5-1.8.4-r1'.
 * The complete build log is located at '/var/tmp/portage/sci-libs/hdf5-1.8.4-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sci-libs/hdf5-1.8.4-r1/temp/environment'.
 * S: '/var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4'

>>> Failed to emerge sci-libs/hdf5-1.8.4-r1, Log file:

Reproducible: Always
Comment 1 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-02-02 14:22:54 UTC
It looks like bug 281283. Could you paste output of:
mpif90 --showme
Comment 2 Oliver Borm 2010-02-02 14:31:29 UTC
Yes it seems so. Here is the output:

# mpif90 --showme
x86_64-pc-linux-gnu-gfortran -pthread -I/usr/lib64 -L/usr/lib64 -lmpi_f90 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl
Comment 3 Justin Bronder (RETIRED) gentoo-dev 2010-02-02 15:28:24 UTC
Would you mind verifying that this is fixed with a newer version of openmpi?  (1.4.1 preferably.)
Comment 4 Oliver Borm 2010-02-02 15:51:55 UTC
No, as I prefer to use the stable version of openmpi.
Comment 5 Markos Chandras (RETIRED) gentoo-dev 2010-02-03 19:51:02 UTC
(In reply to comment #3)
> Would you mind verifying that this is fixed with a newer version of openmpi? 
> (1.4.1 preferably.)
> 

Yep it works with 1.4.1. Please consider stabilize that version

Thanks
Comment 6 Helmut Jarausch 2010-02-10 08:56:22 UTC
(In reply to comment #3)
> Would you mind verifying that this is fixed with a newer version of openmpi? 
> (1.4.1 preferably.)
> 

Still no luck here:
libtool: link: mpif90 -I../../fortran/src -I../../fortran/test -I../../fortran/src -Wl,-O1 -o .libs/parallel_test ptest.o hyper.o mdset.o  ../../fortran/test/.libs/libh5test_fortran.a ../../test/.libs/libh5test.a ../../fortran/src/.libs/libhdf5_fortran.so /var/tmp/portage/sci-libs/hdf5-1.8.4-r1/work/hdf5-1.8.4/src/.libs/libhdf5.so ../../src/.libs/libhdf5.so -lpthread -lz -lm
hyper.o: In function `hyper_':

hyper.f90:(.text+0x513): undefined reference to `h5pset_fapl_mpio_f_'

... and many more such messages.

openmpi-1.4.1 installed on 02/01/2010

# emerge --info '=sci-libs/hdf5-1.8.4-r1'
Portage 2.2_rc62 (default/linux/amd64/10.0/desktop, gcc-4.4.3, glibc-2.11-r1, 2.6.32-gentoo-r3 x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.32-gentoo-r3-x86_64-AMD_Phenom-tm-_II_X4_955_Processor-with-gentoo-2.0.1
Timestamp of tree: Wed, 10 Feb 2010 07:15:01 +0000
ccache version 2.4 [disabled]
app-shells/bash:     4.0_p37
dev-java/java-config: 1.3.7-r1, 2.1.10
dev-lang/python:     2.6.4-r1
dev-python/pycrypto: 2.1.0
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.8.0-r2
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.6.0-r1
sys-apps/sandbox:    2.2
sys-devel/autoconf:  2.13, 2.65
sys-devel/automake:  1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20
sys-devel/gcc:       4.2.4-r1, 4.3.4, 4.4.3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-mtune=native -O2 -msse3 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-mtune=native -O2 -msse3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests buildpkg distlocks fixpackages news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo "
LANG="en_US.iso88591"
LDFLAGS="-Wl,-O1"
LINGUAS="en de"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/portage/layman/java-overlay"
SYNC="rsync://rsync.informatik.RWTH-Aachen.de/gentoo-portage"
USE="3dnow 3dnowext 3dnowprefetch X a52 aac acl acpi alsa amd64 atm avahi berkdb branding bzip2 cairo cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr eds emboss encode evo fam ffmpeg fftw firefox flac fortran fuse gdbm gfortran gif gimp gnome gpm gstreamer gtk gtk2 hal iconv ipv6 jpeg kde lapack lcms libnotify mad mikmod mmx mmxext mng modules mp3 mp4 mpeg mudflap multilib ncurses nls nptl nptlonly ogg opengl openmp pam pcre pdf perl png ppds pppd python qt qt3support qt4 quicktime readline reflection sdl session smp spell spl sqlite sqlite3 sse sse2 sse3 sse4a ssl startup-notification svg sysfs tcl tcpd threads thunar tiff tk truetype unicode usb vorbis x264 xml xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev wacom" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en de" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="radeonhd" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

sci-libs/hdf5-1.8.4-r1 was built with the following:
USE="cxx fortran (multilib) threads zlib -examples -mpi -szip" 
CFLAGS="-mtune=native -O2 -pipe"
CXXFLAGS="-mtune=native -O2 -pipe"
Comment 7 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-02-10 09:09:49 UTC
(In reply to comment #6)

> libtool: link: mpif90 -I../../fortran/src -I../../fortran/test
<snip>
> sci-libs/hdf5-1.8.4-r1 was built with the following:
> USE="cxx fortran (multilib) threads zlib -examples -mpi -szip" 
<snip>

You're trying to merge hdf5[mpi] while having hdf5[-mpi] installed on your system (or vice versa). It's known problem due to wrong order of module scoping.
See bug 299710, or comment in bug 286492#c12.
 
In short: emerge -C hdf5 and then emerge hdf5
Best regards,
Kacper
Comment 8 Helmut Jarausch 2010-02-10 12:45:56 UTC
(In reply to comment #7)
> In short: emerge -C hdf5 and then emerge hdf5

Thanks, that worked!

Comment 9 Justin Bronder (RETIRED) gentoo-dev 2010-02-12 07:41:38 UTC
(In reply to comment #5)
> (In reply to comment #3)
> > Would you mind verifying that this is fixed with a newer version of openmpi? 
> > (1.4.1 preferably.)
> > 
> 
> Yep it works with 1.4.1. Please consider stabilize that version
> 
> Thanks
> 

Just waiting for 30 days to pass on 1.4.1-r1, pending no more bugs.
Comment 10 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-06-21 13:43:16 UTC
Openmpi 1.4.1 is stable