Bug 253451 - math/mumps: Unresolved mpi-related symbols in libdmumps.so
Summary: math/mumps: Unresolved mpi-related symbols in libdmumps.so
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Thierry Thomas
URL: https://listes.ens-lyon.fr/sympa/arc/...
Keywords:
Depends on:
Blocks:
 
Reported: 2021-02-12 09:52 UTC by Yuri Victorovich
Modified: 2021-02-12 17:15 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (thierry)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yuri Victorovich freebsd_committer 2021-02-12 09:52:21 UTC
Hi Thierry,

c_example.c (from mumps-5.1.2/examples) compiles but breaks at run-time:

> $ cc c_example.c -I /usr/local/include/ -L /usr/local/lib -ldmumps -lmpich
> $ sudo ./a.out 
> ld-elf.so.1: /usr/local/lib/libdmumps.so.5: Undefined symbol "mpi_bcast_"


libdmumps.so seems to need to be linked with MPI libraries.


Yuri
Comment 1 Thierry Thomas freebsd_committer 2021-02-12 14:52:06 UTC
Hello Yuri,

When MUMPS is built without the MPI option, it installs the library libmpiseq.so, which provides the missing symbols for the sequential mode.

How did you install the port and compile this example?
Comment 2 Yuri Victorovich freebsd_committer 2021-02-12 17:15:54 UTC
(In reply to Thierry Thomas from comment #1)

> How did you install the port and compile this example?

I installed it using a package. I compiled this example manually using this command line.

> [...] it installs the library libmpiseq.so, which provides the missing symbols for the sequential mode.

This means that libmumps.so is missing the link to libmpiseq.so which can be worked around by always adding -lmpiseq.

IMO this is a bug that the project fails to link their internal libraries between them.

There is also an chance that this is intended - perhaps such example can work without MPI and never trigger this error (?) and not even need the MPI libs installed.

I asked the MUMPS upstream through their ML.


Yuri