Testcase jets2DFlucSplit fails
Closed this issue · 1 comments
I followed the manual and successfully built the code with a configuration file similar to coolfluid.conf.mutationpp
on both cluster and local machine. The previous one was compiled with icc+impi
and the latter one was compiled with gcc+openmpi
. I used ./prepare.pl --build=optim
to generate build_dir
for both of them. The testcase jets2DFR
can be run without problem on both machine. But the testcase jets2DFlucSplit
failed on the local machine. The code crashed and threw
coolfluid-solver: /home/han/coolfluid-svn/src/coolfluid/src/Framework/GeometricEntityRegister.cxx:89: COOLFluiD::CFuint COOLFluiD::Framework::GeometricEntityRegister::regist(const string&): Assertion `Environment::Factory<GeometricEntity>::getInstance().exists( providerName )' failed.
I hard-coded the file Framework/GeometricEntityRegister.cxx
and let it print all the providers of GeometricEntity
. For the jets2DFR
case, it successfully printed all the ones defined in ShapeFunction
but nothing was printed for the jets2DFlucSplit
case.
If I change the command from ./prepare.pl --build=optim
to ./prepare.pl --build=debug
and add the following lines in the configuration file
debugprofile_cflags = -pg -O2
debugprofile_cxxflags = -pg -O2
debugprofile_fflags = -pg -O2
The program won't crash but it runs slowly. I have no idea what is going wrong and hope you can help. Thank you!
I found out a solution by adding the following lines to the beginning of CMakeList.txt
SET(CMAKE_C_FLAGS "")
SET(CMAKE_CXX_FLAGS "")
SET(CMAKE_Fortran_FLAGS "")
SET(CMAKE_SHARED_LINKER_FLAGS "")