Joe,Below are some more recent instructions for a parallel build of Overture on a Mac, including an A++P++ configure line which does not include -mlongcall (that was for older PowerPC macs, I believe). For a serial build, the A++ configure line I currently use (on a OS X 10.5.8 machine) is: % ./configure --with-CC="/Users/chand1/MacPorts/bin/gcc -I/usr/include/ malloc" --with-CXX="/Users/chand1/MacPorts/bin/g++ -I/usr/include/ malloc" --prefix="/Users/chand1/Overture/A++P++/A++P++-0.7.9d/gcc4.3.3" Note, my MacPorts is not installed in /opt/local, you will need to adjust the configure line appropriately.
For Overture, one would use % configure darwin useHDF5 FC=gfortran or something similar. Regards, Kyle mailto: chand1@xxxxxxxx phoneto: (925) 422 7740 Begin forwarded message:
From: Kyle K.Chand <chand1@xxxxxxxx> Date: September 24, 2010 3:44:20 PM PDT To: Ramesh Balakrishnan <bramesh@xxxxxxxxxxxx> Cc: "overture@xxxxxxxxxxxxx" <overture@xxxxxxxxxxxxx> Subject: [overture] Parallel Overture on Mac Reply-To: "overture@xxxxxxxxxxxxx" <overture@xxxxxxxxxxxxx> Hi Ramesh, I managed to build Overture on the Mac. There were a few odd things. 0) It appears that openmpi is on the mac by default in /usr, I had not known that. You can also use the openmpi and mpich or lam mpi from macports. 1) the configure line for A++P++ is: ./configure --prefix=`pwd` --without-PADRE --disable-shared --disable-mpirun-check --enable-PXX --with-CC="gcc -I/usr/include/malloc" -- with-CXX="g++ -I/usr/include/malloc" --with-mpi-libs="-lmpi_cxx -lmpi" 2) To build A++P++, use : make MAKE=make install 3) make sure you have a parallel build of HDF5 4) configure Overture using something like: ./configure darwin parallel useHDF5 FC=gfortran 5) Now you need to fix the PFLAGS variable in $Overture/GridFunction/ Makefile in order to add -I/usr/include/malloc 6) In the primer directory Makefile, eliminate the -Wl-weak- framework,VecLib option from all the make variables 7) Fix ParallelUtility.C, the bool version of broadCast should be: void broadCast( bool & value, const int & fromProcessor ) { #ifdef USE_PPP if( Communication_Manager::Number_Of_Processors==0 ) return; int tmpValue = value; MPI_Bcast( &tmpValue, 1, MPI_INT, fromProcessor, MPI_COMM_WORLD); value = tmpValue; #endif } 8) Now you should be able to build Overture and also build the examples primer/pppWave and primer/pwave I was able to build and run pppWave and pwave with two MPI tasks on my mac laptop. We are working the fixes into the next release. Let me know how this works! Kyle mailto: chand1@xxxxxxxx phoneto: (925) 422 7740