Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 671510 - [science overlay] sys-cluster/openmpi-4.0.0 - /usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libhwloc.so: error adding symbols: file in wrong format
Summary: [science overlay] sys-cluster/openmpi-4.0.0 - /usr/lib/gcc/x86_64-pc-linux-gn...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Overlays (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-11-19 12:44 UTC by Juergen Rose
Modified: 2019-04-14 22:17 UTC (History)
1 user (show)

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


Attachments
build.log (build.log,967.68 KB, text/plain)
2018-11-19 12:44 UTC, Juergen Rose
Details
Output of "emerge --info '=sys-cluster/openmpi-4.0.0::science' " (emerge_--info_openmpi-4.0.0.log,9.50 KB, text/x-log)
2018-11-19 12:46 UTC, Juergen Rose
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Juergen Rose 2018-11-19 12:44:19 UTC
Created attachment 555712 [details]
build.log

'MAKEOPTS=-j1 emerge -v1 openmpi' fails with:
...
libtool: link: x86_64-pc-linux-gnu-gcc -m32 -shared  -fPIC -DPIC  class/.libs/opal_bitmap.o class/.libs/opal_free_list.o class/.libs/opal_hash_table.o  ....  /usr/lib64/libltdl.so -ldl -levent -levent_pthreads  -m32 -march=broadwell -O2 -pthread -Wl,-O1 -Wl,--as-needed   -pthread -Wl,-soname -Wl,libopen-pal.so.40 -o .libs/libopen-pal.so.40.20.0
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib64/librt.so when searching for -lrt
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib64/librt.a when searching for -lrt
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib64/libutil.so when searching for -lutil
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib64/libutil.a when searching for -lutil
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib64/libz.so when searching for -lz
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libhwloc.so: error adding symbols: file in wrong format
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:2233: libopen-pal.la] Error 1
make[2]: Leaving directory '/var/tmp/portage/sys-cluster/openmpi-4.0.0/work/openmpi-4.0.0-abi_x86_32.x86/opal'


root@lynx:/root(120)# emerge -pqv '=sys-cluster/openmpi-4.0.0::science'
[ebuild     U ] sys-cluster/openmpi-4.0.0 [3.1.3] USE="cxx fortran ipv6 java romio -cma -cuda -heterogeneous -numa" ABI_X86="32 (64) (-x32)" OPENMPI_FABRICS="-knem -ofed -psm" OPENMPI_OFED_FEATURES="-control-hdr-padding -dynamic-sl -rdmacm -udcm" OPENMPI_RM="-pbs -slurm"
Comment 1 Juergen Rose 2018-11-19 12:46:23 UTC
Created attachment 555714 [details]
Output of  "emerge --info '=sys-cluster/openmpi-4.0.0::science' "
Comment 2 Juergen Rose 2018-11-23 09:54:50 UTC
I masked >=sys-cluster/openmpi-4.0.0
Comment 3 Justin Bronder (RETIRED) gentoo-dev 2018-11-26 17:10:03 UTC
(In reply to Juergen Rose from comment #2)
> I masked >=sys-cluster/openmpi-4.0.0

Ok, but seems silly as it works just fine if you're not using the multibuild stuff.  Leaving a comment mainly so anyone who hits the mask and isn't building for more than one arch knows they can safely unmask.
Comment 4 Juergen Rose 2019-01-04 18:04:05 UTC
(In reply to Justin Bronder from comment #3)
> (In reply to Juergen Rose from comment #2)
> > I masked >=sys-cluster/openmpi-4.0.0
> 
> Ok, but seems silly as it works just fine if you're not using the multibuild
> stuff.  Leaving a comment mainly so anyone who hits the mask and isn't
> building for more than one arch knows they can safely unmask.


If I unmask >=sys-cluster/openmpi-4.0.0 and remove the abi_x86_32 USE flag from sys-cluster/openmpi and virtual/mpi I can emerge openmpi-4.0.0::science. 

But the subsequent 'emerge -vuDN world' fails with:

root@lynx:/root(68)# emerge -pvuDN world

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] sys-cluster/openmpi-4.0.0::science  USE="cxx fortran ipv6 java romio -cma -cuda -heterogeneous -numa" ABI_X86="32* (64) (-x32)" OPENMPI_FABRICS="-knem -ofed -psm" OPENMPI_OFED_FEATURES="-control-hdr-padding -dynamic-sl -rdmacm -udcm" OPENMPI_RM="-pbs -slurm" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
...
virtual/mpi:0

  (virtual/mpi-2.0-r5:0/0::gentoo, ebuild scheduled for merge) conflicts with
    >=virtual/mpi-2.0-r4[abi_x86_32(-),abi_x86_64(-),cxx,threads] required by (dev-libs/boost-1.65.0:0/1.65.0::gentoo, installed)
                                                                 
    =virtual/mpi-2.0-r5[abi_x86_32(-),abi_x86_64(-),cxx,threads] required by (dev-libs/boost-1.65.0:0/1.65.0::gentoo, installed)
                                                                


The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by virtual/mpi-2.0-r5::gentoo
# required by dev-python/mpi4py-3.0.0::gentoo
# required by dev-python/h5py-2.7.1::gentoo[mpi]
# required by dev-python/astropy-2.0.1::gentoo
# required by sci-visualization/veusz-3.0.1::gentoo[fits]
# required by @selected
# required by @world (argument)
>=sys-cluster/openmpi-4.0.0 abi_x86_32

emerge: there are no ebuilds built with USE flags to satisfy ">=sys-cluster/openmpi-1.10.2-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,cxx?,fortran?,romio?,threads(+)?]".
!!! One of the following packages is required to complete your request:
- sys-cluster/openmpi-3.1.3::science (Change USE: +abi_x86_32)
- virtual/mpi-2.0-r5::gentoo (Change USE: -abi_x86_32)
(dependency required by "virtual/mpi-2.0-r5::gentoo" [installed])
(dependency required by "dev-libs/boost-1.65.0::gentoo[mpi]" [installed])
(dependency required by "virtual/podofo-build-0.9.6::gentoo[boost]" [installed])
(dependency required by "app-text/calibre-3.36.0::gentoo" [installed])
(dependency required by "@selected" [set])
(dependency required by "@world" [argument])


Is there not any patch to emerge openmpi-4.0.0 with the abi_x86_32 USE flag?
Comment 5 Justin Bronder (RETIRED) gentoo-dev 2019-01-09 18:59:45 UTC
(In reply to Juergen Rose from comment #4)
> Is there not any patch to emerge openmpi-4.0.0 with the abi_x86_32 USE flag?

I need to look into it.  Sadly, this came at a busy time for me as my second child was just born so things are pretty busy for me as you can imagine ;)
Comment 6 Juergen Rose 2019-04-07 15:27:39 UTC
It still fails with the same error.
Comment 7 Larry the Git Cow gentoo-dev 2019-04-08 21:56:24 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/proj/sci.git/commit/?id=9b561f5c757362a404c9a7505b7344602a649ad3

commit 9b561f5c757362a404c9a7505b7344602a649ad3
Author:     Jian Cao <sworden.cao@gmail.com>
AuthorDate: 2019-04-04 20:46:56 +0000
Commit:     Justin Bronder <jsbronder@gentoo.org>
CommitDate: 2019-04-08 21:56:12 +0000

    sys-cluster/openmpi: specify external libraries and version bump
    
    Closes: https://bugs.gentoo.org/671510
    Package-Manager: Portage-2.3.62, Repoman-2.3.12
    Signed-off-by: Jian Cao <sworden.cao@gmail.com>
    Signed-off-by: Justin Bronder <jsbronder@gentoo.org>

 sys-cluster/openmpi/Manifest                                       | 2 +-
 sys-cluster/openmpi/{openmpi-4.0.0.ebuild => openmpi-4.0.1.ebuild} | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)
Comment 8 Justin Bronder (RETIRED) gentoo-dev 2019-04-08 22:03:16 UTC
(In reply to Juergen Rose from comment #6)
> It still fails with the same error.

Luckily you can thank Jian Cao for researching the issue and contributing a fix.
Comment 9 Juergen Rose 2019-04-14 22:17:26 UTC
(In reply to Larry the Git Cow from comment #7)
> The bug has been closed via the following commit(s):
> 
> https://gitweb.gentoo.org/proj/sci.git/commit/
> ?id=9b561f5c757362a404c9a7505b7344602a649ad3
> 
> commit 9b561f5c757362a404c9a7505b7344602a649ad3
> Author:     Jian Cao <sworden.cao@gmail.com>
> AuthorDate: 2019-04-04 20:46:56 +0000
> Commit:     Justin Bronder <jsbronder@gentoo.org>
> CommitDate: 2019-04-08 21:56:12 +0000
> 
>     sys-cluster/openmpi: specify external libraries and version bump
>     
>     Closes: https://bugs.gentoo.org/671510
>     Package-Manager: Portage-2.3.62, Repoman-2.3.12
>     Signed-off-by: Jian Cao <sworden.cao@gmail.com>
>     Signed-off-by: Justin Bronder <jsbronder@gentoo.org>
> 
>  sys-cluster/openmpi/Manifest                                       | 2 +-
>  sys-cluster/openmpi/{openmpi-4.0.0.ebuild => openmpi-4.0.1.ebuild} | 6
> +++---
>  2 files changed, 4 insertions(+), 4 deletions(-)


Thanks for the patch, it works now for me.