[Trilinos-Users] [EXTERNAL] Re: 'MPI_Comm_create_keyval' was not declared in this scope

Elliott, James John jjellio at sandia.gov
Mon Feb 27 13:44:23 EST 2017


Hi David,

I rarely set MPI_x_COMPILER

Try setting:
CMAKE_CXX_COMPILER=/usr/local/tools/mvapich2-gnu-2.2/bin/mpiCC
CMAKE_C_COMPILER=/usr/local/tools/mvapich2-gnu-2.2/bin/mpicc

And omit the MPI_BASE_DIR variable.

Before redoing the configure,
rm -rf CMakeCache.txt CMakeFiles

James

________________________________
From: Hysom, David A. <hysom1 at llnl.gov>
Sent: Monday, February 27, 2017 10:59 AM
To: Elliott, James John; James; trilinos-users at trilinos.org
Subject: Re: [Trilinos-Users] [EXTERNAL] Re: 'MPI_Comm_create_keyval' was not declared in this scope


Here's a bit more info. When I don't specify MPI_BASE_DIR the MPICXX_COMPILER

is set properly, then changed to the default:


Probing the environment ...
...

-- MPI_CXX_COMPILER='/usr/local/tools/mvapich2-gnu-2.2/bin/mpiCC'
-- MPI_CXX_COMPILER='/usr/local/bin/mpiCC'
-- Setting CMAKE_CXX_COMPILER=${MPI_CXX_COMPILER}
-- CMAKE_CXX_COMPILER='/usr/local/bin/mpiCC'


________________________________
From: Trilinos-Users <trilinos-users-bounces at trilinos.org> on behalf of Elliott, James John <jjellio at sandia.gov>
Sent: Monday, February 27, 2017 9:47:21 AM
To: Hysom, David A.; James; trilinos-users at trilinos.org
Subject: Re: [Trilinos-Users] [EXTERNAL] Re: 'MPI_Comm_create_keyval' was not declared in this scope


Thanks David,


I've started an issue for this on Trilinos' github site. Glad you found a work around.


https://github.com/trilinos/Trilinos/issues/1097


James

________________________________
From: Hysom, David A. <hysom1 at llnl.gov>
Sent: Monday, February 27, 2017 10:37 AM
To: Elliott, James John; James; trilinos-users at trilinos.org
Subject: Re: [EXTERNAL] Re: [Trilinos-Users] 'MPI_Comm_create_keyval' was not declared in this scope


Oddly enough LC's default mpi (/usr/local/bin/mpicc) is v1.47


I just got the build to go through with these settings:


          -D MPI_C_COMPILER:STRING="/usr/local/tools/mvapich2-gnu-2.2/bin/mpicc" \
          -D MPI_CXX_COMPILER:STRING="/usr/local/tools/mvapich2-gnu-2.2/bin/mpiCC" \
          -D MPI_BASE_DIR:PATH="/usr/local/tools/mvapich2-gnu-2.2" \

I've never before specified MPI_BASE_DIR, but with out this the build was still
failing.


________________________________
From: Elliott, James John <jjellio at sandia.gov>
Sent: Monday, February 27, 2017 8:42:49 AM
To: James; Hysom, David A.; trilinos-users at trilinos.org
Subject: Re: [EXTERNAL] Re: [Trilinos-Users] 'MPI_Comm_create_keyval' was not declared in this scope


Hi David,

I highly doubt your mvapich is MPI-1.  I looked back through Argonne's website and they dropped the mvapich2 naming years ago and now only distribute mvapich, which is MPI-1,2,3 compliant.

If you can post the output of:
make VERBOSE=1

That may provide some hint as to what is going wrong. Most likely, something is messing up the compiler or include path.

James

________________________________
From: Trilinos-Users <trilinos-users-bounces at trilinos.org> on behalf of James <jjellio3 at ncsu.edu>
Sent: Monday, February 27, 2017 9:07 AM
To: Hysom, David A.; trilinos-users at trilinos.org
Subject: [EXTERNAL] Re: [Trilinos-Users] 'MPI_Comm_create_keyval' was not declared in this scope

Hi David,

My guess is that MPI_Comm_create_keyval is an MPI-2 function, and you have mvapich which is MPI-1.  I am not sure what Trilinos' status is with regard to required MPI versions. (OpenMPI provides MPI-2 functionality).

Do you have access to 'mvapich2' ?

James

On 2/27/2017 8:58 AM, Hysom, David A. wrote:
I've been able to compile Trilinos-12.10.1 using openMPI,
however, when I attempt to use mpich I get the following
during compilation:

/p/lscratche/hysom/trilinos-12.10.1-Source/packages/teuchos/comm/src/Teuchos_MpiReductionOpSetter.cpp:171:43: error: 'MPI_Comm_create_keyval' was not declared in this scope
                                 &key, NULL);

Any suggestions as to what settings I have wrong?

thanks, David

$/usr/local/bin/./mpicc --version
gcc (GCC) 4.8.5

$
/usr/local/bin/./mpicc -show

Build Line:
gcc -Wl,-rpath,/usr/local/tools/mvapich-gnu/lib/shared -DUSE_STDARG -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDARG_H=1 -DUSE_STDARG=1 -DMALLOC_RET_VOID=1 -I/usr/local/tools/mvapich-gnu/include -L/usr/local/tools/mvapich-gnu/lib/shared -L/usr/lib64 -L/usr/local/tools/mvapich-gnu/lib -lmpich
#!/bin/bash

TRILINOS_SOURCE_PATH=/p/lscratche/hysom/trilinos-12.10.1-Source
TRILINOS_INSTALL_PATH=/p/lscratche/hysom/trilinos-12-debug

EXTRA_ARGS=$@

rm -f CMakeCache.txt

cmake  \
          -D MPI_C_COMPILER:STRING="/usr/local/bin/./mpicc" \
          -D MPI_CXX_COMPILER:STRING="/usr/local/bin/./mpiCC" \
          -D TPL_ENABLE_MPI:BOOL=ON \
          -D CMAKE_CXX_FLAGS="-g " \
          -D Trilinos_ENABLE_Fortran:BOOL=OFF \
          -D Trilinos_ASSERT_MISSING_PACKAGES=OFF \
          -D Teuchos_ENABLE_COMPLEX:BOOL=OFF \
          -D Tpetra_INST_COMPLEX_DOUBLE:BOOL=OFF \
          -D Trilinos_ENABLE_ThreadPool:BOOL=OFF \
          -D Trilinos_ENABLE_TEUCHOS_TIME_MONITOR:BOOL=ON \
          -D TPL_ENABLE_Pthread:BOOL=OFF  \
          -D TPL_ENABLE_TBB:BOOL=OFF \
          -D Trilinos_ENABLE_Kokkos:BOOL=ON \
          -D Kokkos_ENABLE_EXAMPLES:BOOL=ON \
          -D Kokkos_ENABLE_TESTS:BOOL=OFF \
          -D Trilinos_ENABLE_CHECKED_STL:BOOL=OFF \
          -D Kokkos_ENABLE_Serial:BOOL=ON \
          -D Tpetra_INST_SERIAL:BOOL=ON \
          -D Trilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=OFF \
          -D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=OFF \
          -D Trilinos_ENABLE_Anasazi:BOOL=ON \
          -D Trilinos_ENABLE_Tpetra:BOOL=ON \
          -D Trilinos_ENABLE_Zoltan2:BOOL=OFF \
          -D Tpetra_ENABLE_TESTS:BOOL=OFF \
          -D Trilinos_ENABLE_EXAMPLES:BOOL=OFF \
          -D CMAKE_INSTALL_PREFIX:STRING=${TRILINOS_INSTALL_PATH} \
          -D CMAKE_BUILD_TYPE:STRING=DEBUG \
          -D DART_TESTING_TIMEOUT:STRING=600 \
          -D Trilinos_ENABLE_Belos=ON \
          -D Trilinos_ENABLE_Ifpack2=ON \
          ${EXTRA_ARGS} \
          ${TRILINOS_SOURCE_PATH}






_______________________________________________
Trilinos-Users mailing list
Trilinos-Users at trilinos.org<mailto:Trilinos-Users at trilinos.org>
https://trilinos.org/mailman/listinfo/trilinos-users


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://trilinos.org/pipermail/trilinos-users/attachments/20170227/84cdb475/attachment.html>


More information about the Trilinos-Users mailing list