You are not logged in.

#1 2017-02-23 17:48:03

militarymaid
Member
From: Mexico City
Registered: 2017-02-09
Posts: 26

[Solved] Parmetis compilation issue.

I am trying to run a project and it depends on parmetis, ran it before in Arch 4.6 but now in 4.8 the following error comes by:

[media@Mugenkan 01-Zalesak]$ make
mpif90 -c -O3 -DMPIDEFS2 -DLIT_SKIP_HOOKS -DNOHDF  -I.  -I../..//mod  \
 lit.f90
mpif90  -o lit lit.o -L../..//lib -llit  -L/opt/parmetis -lparmetis -lmetis 
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `MPI_Comm_f2c'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_int'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_op_min'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_double_int'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_2int'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_op_minloc'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_op_max'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_double'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_comm_world'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_op_sum'
/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/../../../../lib/libparmetis.so: undefined reference to `ompi_mpi_float'
collect2: error: ld returned 1 exit status

Assumed it is some issue with the AUR package so installed it from source code but the issue remains...
I have both Open MPI and ompi (AUR).

Edit: Thanks for the help it was an issue with the intel compiler which did not allow mpich to run correcly, uninstalled it and now the project runs again.

Last edited by militarymaid (2017-02-24 17:04:21)

Offline

#2 2017-02-23 17:55:46

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,441
Website

Re: [Solved] Parmetis compilation issue.

You aren't linking to ompi.  You need to add `-L/usr/lib/openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,--enable-new-dtags -lmpi` to the linker line, or better yet use pkg-config.

EDIT: I see you're using mpif90 as your compiler/linker.  In theory it seems that is supposed to add these linker flags for you, but it doesn't seem to be doing so.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#3 2017-02-23 18:30:59

militarymaid
Member
From: Mexico City
Registered: 2017-02-09
Posts: 26

Re: [Solved] Parmetis compilation issue.

Last time it did the link automatically... I do not know what bug caused the link not to be done this time. Thanks I will do it to get the project working.

Edit: Wait that line do I have to add it to the package or to the makefile?

Last edited by militarymaid (2017-02-23 20:19:40)

Offline

#4 2017-02-23 21:58:02

militarymaid
Member
From: Mexico City
Registered: 2017-02-09
Posts: 26

Re: [Solved] Parmetis compilation issue.

Checked again the  parmetis package, it  is not very well built when I install it because there is some sort of conflict with the intel fortran compiler. Any ideas to solve this issue?

Offline

#5 2017-02-23 22:36:32

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,441
Website

Re: [Solved] Parmetis compilation issue.

What's the conflict?  I had no problem installing it?


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#6 2017-02-24 03:59:29

militarymaid
Member
From: Mexico City
Registered: 2017-02-09
Posts: 26

Re: [Solved] Parmetis compilation issue.

make[2]: Entering directory '/home/media/.cache/pacaur/mpich/src/mpich-3.2/build/src/mpi/romio'
make[3]: Entering directory '/home/media/.cache/pacaur/mpich/src/mpich-3.2/build/src/mpi/romio'
  CC       mpi-io/close.lo
icc: command line warning #10159: invalid argument for option '-m'
  CC       mpi-io/delete.lo
icc: command line warning #10159: invalid argument for option '-m'
  CC       mpi-io/file_c2f.lo
icc: command line warning #10159: invalid argument for option '-m'
  CC       mpi-io/file_f2c.lo
icc: command line warning #10159: invalid argument for option '-m'
  CC       mpi-io/fsync.lo
icc: command line warning #10159: invalid argument for option '-m'
  CC       mpi-io/get_amode.lo
icc: command line warning #10159: invalid argument for option '-m'
  CC       mpi-io/get_atom.lo
icc: command line warning #10159: invalid argument for option '-m'
  CC       mpi-io/get_bytoff.lo
icc: command line warning #10159: invalid argument for option '-m'
  CC       mpi-io/get_extent.lo

Starts like this goes on for quite a while...

Offline

#7 2017-02-24 11:32:26

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,441
Website

Re: [Solved] Parmetis compilation issue.

I thought you meant package conflict.  That is not a package conflict.  It is ... a totally different error from a totally different build process of a totally different package using yet another different compiler.

In what way does that error even remotely relate to this thread?


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#8 2017-02-24 16:14:37

militarymaid
Member
From: Mexico City
Registered: 2017-02-09
Posts: 26

Re: [Solved] Parmetis compilation issue.

The mpich issue is caused by a cross compiling issue with icc. That is it and thank you for the help. The thread should be closed since the error already came out.
I am sorry I lost track of the thread and changed the subject.

Last edited by militarymaid (2017-02-24 16:33:24)

Offline

Board footer

Powered by FluxBB