Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 890511

Summary: sci-libs/arpack-3.8.0 - configure: error: could not compile a Fortran MPI test program
Product: Gentoo Linux Reporter: Toralf Förster <toralf>
Component: Current packagesAssignee: Gentoo Science Related Packages <sci>
Status: CONFIRMED ---    
Severity: normal CC: frp.bissey
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge-info.txt
emerge-history.txt.bz2
environment
etc.portage.tar.bz2
logs.tar.bz2
sci-libs:arpack-3.8.0:20230111-183258.log
temp.tar.bz2

Description Toralf Förster gentoo-dev 2023-01-11 19:01:22 UTC
checking for MPI_Init... no
checking for MPI_Init in -lfmpi... no
checking for MPI_Init in -lfmpich... no
checking for MPI_Init in -lmpif77... no
checking for MPI_Init in -lmpi... no
checking for MPI_Init in -lmpich... no
configure: error: could not compile a Fortran MPI test program

!!! Please attach the following file when seeking support:

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.1-j4-20230105-065844

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-10
 [2] x86_64-pc-linux-gnu-12 *
clang/llvm (if any):
/usr/lib/llvm/15
15.0.6
Python 3.10.9
Available Ruby profiles:
  [1]   ruby27 (with Rubygems) *
Available Rust versions:
  [1]   rust-1.66.0 *
The following VMs are available for generation-2:
1)	Eclipse Temurin JDK 11.0.17_p8 [openjdk-bin-11]
*)	Eclipse Temurin JDK 17.0.5_p8 [openjdk-bin-17]
3)	Eclipse Temurin JDK 8.352_p08 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   openjdk-bin-8 
  [2]   openjdk-bin-11 
  [3]   openjdk-bin-17  system-vm

php cli (if any):
  [1]   php7.4
  [2]   php8.0 *
  [3]   php8.2

  HEAD of ::gentoo
commit 4659035d8ad7191d656f794fd71fb478f5d8672a
Author: Repository mirror & CI <repomirrorci@gentoo.org>
Date:   Wed Jan 11 18:02:19 2023 +0000

    2023-01-11 18:02:19 UTC

emerge -qpvO sci-libs/arpack
[ebuild  N    ] sci-libs/arpack-3.8.0  USE="mpi -doc -examples"
Comment 1 Toralf Förster gentoo-dev 2023-01-11 19:01:23 UTC
Created attachment 848259 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2023-01-11 19:01:24 UTC
Created attachment 848261 [details]
emerge-history.txt.bz2
Comment 3 Toralf Förster gentoo-dev 2023-01-11 19:01:25 UTC
Created attachment 848263 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2023-01-11 19:01:27 UTC
Created attachment 848265 [details]
etc.portage.tar.bz2
Comment 5 Toralf Förster gentoo-dev 2023-01-11 19:01:27 UTC
Created attachment 848267 [details]
logs.tar.bz2
Comment 6 Toralf Förster gentoo-dev 2023-01-11 19:01:28 UTC
Created attachment 848269 [details]
sci-libs:arpack-3.8.0:20230111-183258.log
Comment 7 Toralf Förster gentoo-dev 2023-01-11 19:01:29 UTC
Created attachment 848271 [details]
temp.tar.bz2
Comment 8 François Bissey 2023-01-11 19:43:23 UTC
This is interesting
configure:26960: mpif77 -o conftest  -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 conftest.f -lmpi   >&5
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_view'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_byte_offset'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_position_shared'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_position'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_delete'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_group'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_type_extent'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_atomicity'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_preallocate'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_size'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_info'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `MPI_File_f2c'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_seek'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_open'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_seek_shared'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_Register_datarep'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `MPI_File_c2f'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_close'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_get_amode'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_set_size'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_set_view'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_set_atomicity'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_sync'
/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libmpifort.so: undefined reference to `PMPI_File_set_info'
collect2: error: ld returned 1 exit status

From what I can see in the logs, mpi is provided by mpich, and it looks like libmpifort.so is underlinked and mpif77 doesn't provide the right extra libraries or possibly provide them out of order.
Comment 9 François Bissey 2023-01-11 20:14:55 UTC
What options has mpich been compiled with? Locally ldd -r doesn't report any missing symbols on libifort.so but "nm -D" does show "PMPI_File_get_get_view" as undefined. However it is part of a family of entries with various capitalisation and underscores, so it is probably aliased to another symbol somewhere.
Comment 10 Toralf Förster gentoo-dev 2023-02-12 21:07:01 UTC
17-1-j4-20230105-065844 /var/tmp/tb # emerge -qpvO mpich
[ebuild   R   ] sys-cluster/mpich-3.4.3  USE="cxx fortran threads -doc -mpi-threads -romio" ABI_X86="(64) -32 (-x32)"