[Paraview] Building parallel pvserver with MPICH2 on Mac OS X

Shigenobu Hirose shirose at jamstec.go.jp
Fri Jan 16 09:55:20 EST 2009


Hi,

I want to build a parallel pvserver on Mac OS X 10.5.6 (Intel) with
paraview-3.4.0 and MPICH2, which fails as follows. It seems that
ccmake cannot find MPI libraries, but I'm sure that the parameters
point correct locations of the libraries. Also, I've confirmed that
MPICH2 are correctly installed on the system. (I also tried the CVS
source, which failed in the same way.)
Could anyone give me suggestions?

Thank you.
Shigenobu

- MPI-related parameters for ccmake:
MPI_EXTRA_LIBRARY                /opt/local/lib/libmpich.a
MPI_INCLUDE_PATH                 /opt/local/include/mpich2
MPI_LIBRARY                      /opt/local/lib/libmpichcxx.a

- Errors:
Linking CXX executable ../../../../bin/DistributedData
Undefined symbols:
  "_MPI_Comm_dup", referenced from:
      vtkMPICommunicator::Duplicate(vtkMPICommunicator*)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Reduce", referenced from:
      vtkMPICommunicatorReduceData(void const*, void*, int, int, int,
int, int*)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Cancel", referenced from:
      vtkMPICommunicator::Request::Cancel()     in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Irecv", referenced from:
      int vtkMPICommunicatorNoBlockReceiveData<int>(int*, int, int,
int, int, vtkMPICommunicator::Request&, int*)in
libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorNoBlockReceiveData<unsigned long>(unsigned
long*, int, int, int, int, vtkMPICommunicator::Request&, int*)in
libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorNoBlockReceiveData<char>(char*, int, int,
int, int, vtkMPICommunicator::Request&, int*)in
libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorNoBlockReceiveData<float>(float*, int,
int, int, int, vtkMPICommunicator::Request&, int*)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Isend", referenced from:
      int vtkMPICommunicatorNoBlockSendData<int>(int const*, int, int,
int, int, vtkMPICommunicator::Request&, int*)in
libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorNoBlockSendData<unsigned long>(unsigned
long const*, int, int, int, int, vtkMPICommunicator::Request&, int*)in
libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorNoBlockSendData<char>(char const*, int,
int, int, int, vtkMPICommunicator::Request&, int*)in
libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorNoBlockSendData<float>(float const*, int,
int, int, int, vtkMPICommunicator::Request&, int*)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Comm_free", referenced from:
      vtkMPICommunicator::~vtkMPICommunicator()in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::~vtkMPICommunicator()in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::~vtkMPICommunicator()in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::InitializeCopy(vtkMPICommunicator*)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Errhandler_set", referenced from:
      vtkMPICommunicator::GetWorldCommunicator()       in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Gatherv", referenced from:
      vtkMPICommunicator::GatherVVoidArray(void const*, void*, int,
int*, int*, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::GatherVVoidArray(void const*, void*, int,
int*, int*, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Comm_rank", referenced from:
      vtkMPICommunicator::InitializeNumberOfProcesses()       in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::ScatterVVoidArray(void const*, void*, int*,
int*, int, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::GatherVVoidArray(void const*, void*, int,
int*, int*, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Comm_size", referenced from:
      vtkMPICommunicator::InitializeNumberOfProcesses()       in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::GetWorldCommunicator()       in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::GatherVoidArray(void const*, void*, int,
int, int)in libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::AllGatherVoidArray(void const*, void*, int,
int)in libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::AllGatherVVoidArray(void const*, void*, int,
int*, int*, int)in libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::ScatterVVoidArray(void const*, void*, int*,
int*, int, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::GatherVVoidArray(void const*, void*, int,
int*, int*, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Op_create", referenced from:
      vtkMPICommunicator::ReduceVoidArray(void const*, void*, int,
int, vtkCommunicator::Operation*, int)in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::AllReduceVoidArray(void const*, void*, int,
int, vtkCommunicator::Operation*)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Ssend", referenced from:
      int vtkMPICommunicatorSendData<char>(char const*, int, int, int,
int, int, int*, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorSendData<char>(char const*, int, int, int,
int, int, int*, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Group_free", referenced from:
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Group_incl", referenced from:
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Allgatherv", referenced from:
      vtkMPICommunicator::AllGatherVVoidArray(void const*, void*, int,
int*, int*, int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Gather", referenced from:
      vtkMPICommunicator::GatherVoidArray(void const*, void*, int,
int, int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Op_free", referenced from:
      vtkMPICommunicator::ReduceVoidArray(void const*, void*, int,
int, vtkCommunicator::Operation*, int)in
libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::AllReduceVoidArray(void const*, void*, int,
int, vtkCommunicator::Operation*)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Errhandler_create", referenced from:
      vtkMPICommunicator::GetWorldCommunicator()       in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Allreduce", referenced from:
      vtkMPICommunicatorAllReduceData(void const*, void*, int, int,
int, int*)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Barrier", referenced from:
      vtkMPICommunicator::Barrier()      in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Request_free", referenced from:
      vtkMPICommunicator::Request::Cancel()     in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Finalize", referenced from:
      vtkMPIController::Finalize(int)   in libvtkParallel.a(vtkMPIController.o)
  "_MPI_Error_string", referenced from:
      vtkMPIController::ErrorString(int)    in
libvtkParallel.a(vtkMPIController.o)
      vtkMPICommunicatorMPIErrorHandler(int*, int*, ...)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Init", referenced from:
      vtkMPIController::Initialize(int*, char***, int)in
libvtkParallel.a(vtkMPIController.o)
  "_MPI_Comm_group", referenced from:
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Allgather", referenced from:
      vtkMPICommunicator::AllGatherVoidArray(void const*, void*, int,
int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Errhandler_free", referenced from:
      vtkMPICommunicator::GetWorldCommunicator()       in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Get_processor_name", referenced from:
      vtkMPIController::Initialize(int*, char***, int)in
libvtkParallel.a(vtkMPIController.o)
  "_MPI_Recv", referenced from:
      int vtkMPICommunicatorReceiveData<char>(char*, int, int, int,
int, int, int*, int, int&)in libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorReceiveData<char>(char*, int, int, int,
int, int, int*, int, int&)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Send", referenced from:
      int vtkMPICommunicatorSendData<char>(char const*, int, int, int,
int, int, int*, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
      int vtkMPICommunicatorSendData<char>(char const*, int, int, int,
int, int, int*, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Test", referenced from:
      vtkMPICommunicator::Request::Test()     in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Wait", referenced from:
      vtkMPICommunicator::Request::Wait()     in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Scatter", referenced from:
      vtkMPICommunicator::ScatterVoidArray(void const*, void*, int,
int, int)in libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Comm_create", referenced from:
      vtkMPICommunicator::Initialize(vtkProcessGroup*)        in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Abort", referenced from:
      vtkMPICommunicatorMPIErrorHandler(int*, int*, ...)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Bcast", referenced from:
      vtkMPICommunicator::BroadcastVoidArray(void*, int, int, int)in
libvtkParallel.a(vtkMPICommunicator.o)
  "_MPI_Scatterv", referenced from:
      vtkMPICommunicator::ScatterVVoidArray(void const*, void*, int*,
int*, int, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
      vtkMPICommunicator::ScatterVVoidArray(void const*, void*, int*,
int*, int, int, int)in libvtkParallel.a(vtkMPICommunicator.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[2]: *** [bin/DistributedData] Error 1
make[1]: *** [VTK/Parallel/Testing/Cxx/CMakeFiles/DistributedData.dir/all]
Error 2
make: *** [all] Error 2


More information about the ParaView mailing list