CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   SU2 Installation (https://www.cfd-online.com/Forums/su2-installation/)
-   -   SU2 compilation with MPI option (https://www.cfd-online.com/Forums/su2-installation/113060-su2-compilation-mpi-option.html)

vinz February 11, 2013 10:00

SU2 compilation with MPI option
 
Dear all,

I downloaded SU2 and managed to compile it in serial mode without problem.
On my system I also have OpenFOAM installed.
When I try to install SU2 with MPI option, I get de following error:

I use the following configuration:
./configure --with-MPI=mpic++ --with-Tecio=/usr/software/tecplot/lib --with-CGNS-lib=/usr/local/lib --with-CGNS-include=/usr/local/include

then running make gives me:
Code:

Making all in trunk/Common/lib
make[1]: entrant dans le répertoire « /home/vincent/SU2v2.0/trunk/Common/lib »
if mpic++ -DPACKAGE_NAME=\"SU\^2\" -DPACKAGE_TARNAME=\"SU\^2\" -DPACKAGE_VERSION=\"2.0\" -DPACKAGE_STRING=\"SU\^2\ 2.0\" -DPACKAGE_BUGREPORT=\"susquared-dev@lists.stanford.edu\" -DPACKAGE=\"SU\^2\" -DVERSION=\"2.0\"  -I. -I.    -I/usr/local/include -DNO_METIS  -g -O2 -MT ../src/libSU2_a-config_structure.o -MD -MP -MF "../src/.deps/libSU2_a-config_structure.Tpo" -c -o ../src/libSU2_a-config_structure.o `test -f '../src/config_structure.cpp' || echo './'`../src/config_structure.cpp; \
    then mv -f "../src/.deps/libSU2_a-config_structure.Tpo" "../src/.deps/libSU2_a-config_structure.Po"; else rm -f "../src/.deps/libSU2_a-config_structure.Tpo"; exit 1; fi
../src/config_structure.cpp: In constructor ‘CConfig::CConfig(char*, short unsigned int, short unsigned int, short unsigned int, short unsigned int)’:
../src/config_structure.cpp:36:9: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::SetPostprocessing(short unsigned int, short unsigned int)’:
../src/config_structure.cpp:1978:11: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp:1990:11: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::SetMarkers(short unsigned int, short unsigned int)’:
../src/config_structure.cpp:2054:13: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::SetFileNameDomain(short unsigned int)’:
../src/config_structure.cpp:3871:6: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp:3877:6: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp:3882:6: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::UpdateCFL(long unsigned int)’:
../src/config_structure.cpp:3965:12: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::SetNondimensionalization(short unsigned int, short unsigned int)’:
../src/config_structure.cpp:4500:9: erreur: ‘MPI’ has not been declared
make[1]: *** [../src/libSU2_a-config_structure.o] Erreur 1
make[1]: quittant le répertoire « /home/vincent/SU2v2.0/trunk/Common/lib »
make: *** [all-recursive] Erreur 1

The mpi installed is the one comming with the last version of openfoam:
Code:

~/SU2v2.0 > mpic++ -v
Utilisation des specs internes.
COLLECT_GCC=/usr/bin/g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6/lto-wrapper
Target: x86_64-linux-gnu
Configuré avec: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Modèle de thread: posix
gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)

What is going wrong?

economon February 20, 2013 02:12

Hi Vincent,

Do you also have Metis version 4.0.3 on your machine? If not, could you please install this version and add it to your configure options above (i.e. --with-Metis-lib & --with-Metis-include options)? Metis 4.0.3 can be found here: http://glaros.dtc.umn.edu/gkhome/fsroot/sw/metis/OLD.

Metis will need to be linked in at compile time and SU2_DDC will need to be used to partition the mesh before SU2_CFD is called. This process is all automated by using the parallel_computation.py script.

Hope this helps!
Tom

vinz February 20, 2013 08:26

Hi Tom,
Thanks for your reply.
However, it still does not work.

Here is my configure command:
Code:

./configure --with-MPI=mpic++ --with-Tecio=/usr/software/tecplot/lib --with-Metis-lib=/home/vincent/SU2v2.0/trunk/metis-4.0.3 --with-Metis-include=/home/vincent/SU2v2.0/trunk/metis-4.0.3/Lib
the configuration is ok:
Code:

Build Configuration Summary:

          Source code location:    /home/vincent/SU2v2.0
          Install location:    /usr/local
          Version:                  2.0
          Compiler:                mpic++
          Preprocessor flags:     
          Compiler flags:          -g -O2
          Linker flags:           
          CGNS support:            no
    MPI support:            yes
    Metis support:        yes

    Build SU2_CFD:        yes
    Build SU2_DDC:        yes
    Build SU2_GPC:        yes
    Build SU2_MAC:        yes
    Build SU2_MDC:        yes
    Build SU2_PBC:        yes
    Build SU2_SMC:        yes

but then the compilation still crashes:
Code:

Making all in trunk/Common/lib
make[1]: entrant dans le répertoire « /home/vincent/SU2v2.0/trunk/Common/lib »
if mpic++ -DPACKAGE_NAME=\"SU\^2\" -DPACKAGE_TARNAME=\"SU\^2\" -DPACKAGE_VERSION=\"2.0\" -DPACKAGE_STRING=\"SU\^2\ 2.0\" -DPACKAGE_BUGREPORT=\"susquared-dev@lists.stanford.edu\" -DPACKAGE=\"SU\^2\" -DVERSION=\"2.0\"  -I. -I.    -DNO_CGNS -I/home/vincent/SU2v2.0/trunk/metis-4.0.3/Lib  -g -O2 -MT ../src/libSU2_a-config_structure.o -MD -MP -MF "../src/.deps/libSU2_a-config_structure.Tpo" -c -o ../src/libSU2_a-config_structure.o `test -f '../src/config_structure.cpp' || echo './'`../src/config_structure.cpp; \
    then mv -f "../src/.deps/libSU2_a-config_structure.Tpo" "../src/.deps/libSU2_a-config_structure.Po"; else rm -f "../src/.deps/libSU2_a-config_structure.Tpo"; exit 1; fi
../src/config_structure.cpp: In constructor ‘CConfig::CConfig(char*, short unsigned int, short unsigned int, short unsigned int, short unsigned int)’:
../src/config_structure.cpp:36:9: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::SetPostprocessing(short unsigned int, short unsigned int)’:
../src/config_structure.cpp:1978:11: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp:1990:11: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::SetMarkers(short unsigned int, short unsigned int)’:
../src/config_structure.cpp:2054:13: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::SetFileNameDomain(short unsigned int)’:
../src/config_structure.cpp:3871:6: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp:3877:6: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp:3882:6: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::UpdateCFL(long unsigned int)’:
../src/config_structure.cpp:3965:12: erreur: ‘MPI’ has not been declared
../src/config_structure.cpp: In member function ‘void CConfig::SetNondimensionalization(short unsigned int, short unsigned int)’:
../src/config_structure.cpp:4500:9: erreur: ‘MPI’ has not been declared
make[1]: *** [../src/libSU2_a-config_structure.o] Erreur 1
make[1]: quittant le répertoire « /home/vincent/SU2v2.0/trunk/Common/lib »
make: *** [all-recursive] Erreur 1


economon February 20, 2013 16:26

You may want to get a fresh copy of MPI and configure/build it yourself (I am not sure how your mpic++ is configured). For instance, I have had success compiling for parallel runs on my laptop using Open MPI with the GNU compilers. You can find Open MPI here: http://www.open-mpi.org. Let me know if this works...

onyir March 5, 2013 10:05

Hi Vincent,

did you finally get SU2 to compile?

I'm experiencing the same problem as you did and I'm not able to make it work.

Regards,

Ricardo.

vinz March 7, 2013 03:02

Unfortunately no, I did not have much time to work on this and since I managed to compile the code on our cluster, it was fine for me.


All times are GMT -4. The time now is 01:35.