I have have a C++ project that used Open MPI 1.4.3 fine on my Mac OS X Snow Leopard OS but now I have updated to Lion and was forced to download/install XCode and now my MPI project is broken.
Running g++ -v produces the following output so you can see my C++ compiler version:
$ g++ -v
Using built-in specs.
Target: i686-apple-darwin11
Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2335.15~25/src/configure --disable-checking --enable-werror --prefix=/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin11 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2335.15~25/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin11- --host=x86_64-apple-darwin11 --target=i686-apple-darwin11 --with-gxx-include-dir=/usr/include/c++/4.2.1
Thread model: posix
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)
These are the errors I get when importing (#include "mpi.h") in my MPI project:
Undefined symbols for architecture x86_64:
"_MPI_Type_contiguous", referenced from:
MPI::Datatype::Create_contiguous(int) constin derivation.o
MPI::Datatype::Create_contiguous(int) constin opponentrules.o
MPI::Datatype::Create_contiguous(int) constin proponentrules.o
MPI::Datatype::Create_contiguous(int) constin main.o
MPI::Datatype::Create_contiguous(int) constin fullderivation.o
"_MPI_Type_vector", referenced from:
MPI::Datatype::Create_vector(int, int, int) constin derivation.o
MPI::Datatype::Create_vector(int, int, int) constin opponentrules.o
MPI::Datatype::Create_vector(int, int, int) constin proponentrules.o
MPI::Datatype::Create_vector(int, int, int) constin main.o
MPI::Datatype::Create_vector(int, int, int) constin fullderivation.o
"_MPI_Type_indexed", referenced from:
The list of errors is long but all similar to the above.