Code Saturne-2.0.0 fails to compile...
- Alex
- Topic Author
- Offline
- Senior Member
-
- Posts: 49
- Thank you received: 0
I have tried to build CS-2.0.0 in my Debian Lenny 5.0.0 amd64.
First, i built bft-1.1.1, then fvm-0.14.0, then mei-1.0.0 and at last ecs-2.0.0
All they build cleanly, the only hack i have to perform is --disable-python-bindings in configuring mei, so that it does not complain about some missing header... so far so good.
Compiling ncs-2.0.0 :
alex@iskandhar:~/Desktop/CDSat/ncs-2.0.0-beta2$ ./configure --prefix=/home/alex/Desktop/Code_Saturne --with-bft=/home/alex/Desktop/Code_Saturne --with-bft-exec=/home/alex/Desktop/Code_Saturne/bin --with-bft-include=/home/alex/Desktop/Code_Saturne/include --with-bft-lib=/home/alex/Desktop/Code_Saturne/lib --with-mei-include=/home/alex/Desktop/Code_Saturne/include --with-mei-lib=/home/alex/Desktop/Code_Saturne/lib --with-mei=/home/alex/Desktop/Code_Saturne --with-fvm=/home/alex/Desktop/Code_Saturne --with-fvm-exec=/home/alex/Desktop/Code_Saturne/bin --with-fvm-include=/home/alex/Desktop/Code_Saturne/include --with-fvm-lib=/home/alex/Desktop/Code_Saturne/lib
Yelds this result... :
Configuration options:
use debugging code: false
MPI (Message Passing Interface) support: no
OpenMP support: no
BLAS (Basic Linear Algebra Subprograms) support: yes
Libxml2 (XML Reader) support: yes
MEI (Mathematical Expressions Interpreter) support: yes
SYRTHES 3 coupling support: yes
IP socket support (for SYRTHES 3 or CFD_Proxy): yes
Dynamic loader support (for YACS): yes
The package has been configured. Type:
make
make install
To generate and install the Code_Saturne kernel
alex@iskandhar:~/Desktop/CDSat/ncs-2.0.0-beta2$
so why 'make' produces this error...? :
Making all in apps
make[3]: Entering directory `/home/alex/Desktop/CDSat/ncs-2.0.0-beta2/src/apps'
/bin/sh ../../libtool --tag=CC --mode=link gcc -funroll-loops -O2 -Wuninitialized -std=c99 -funsigned-char -pedantic -W -Wall -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wunused -Wfloat-equal -rdynamic -O -o cs_solver libsaturne.la -L/home/alex/Desktop/Code_Saturne/lib -lmei -L/home/alex/Desktop/Code_Saturne/lib -lfvm -lmedC -lhdf5 -L/home/alex/Desktop/Code_Saturne/lib -lbft -lz -lxml2 -lcblas -latlas -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2 -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/opt/intel/Compiler/11.1/046/lib/intel64 -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../.. -lgfortranbegin -lgfortran -lm -ldl
libtool: link: gcc -funroll-loops -O2 -Wuninitialized -std=c99 -funsigned-char -pedantic -W -Wall -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wunused -Wfloat-equal -rdynamic -O -o .libs/cs_solver ./.libs/libsaturne.so -L/home/alex/Desktop/Code_Saturne/lib /home/alex/Desktop/Code_Saturne/lib/libmei.so /home/alex/Desktop/Code_Saturne/lib/libfvm.so /usr/lib/libmedC.so -L/usr/lib /usr/lib/libhdf5.so -lpthread /home/alex/Desktop/Code_Saturne/lib/libbft.so -lz /usr/lib/libxml2.so -lcblas -latlas -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2 -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/opt/intel/Compiler/11.1/046/lib/intel64 -L/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../.. -lgfortranbegin -lgfortran -lm -ldl -Wl,-rpath -Wl,/home/alex/Desktop/Code_Saturne/lib
./.libs/libsaturne.so: undefined reference to `_create_join_sync'
./.libs/libsaturne.so: undefined reference to `_destroy_join_sync'
collect2: ld returned 1 exit status
make[3]: *** [cs_solver] Error 1
make[3]: Leaving directory `/home/alex/Desktop/CDSat/ncs-2.0.0-beta2/src/apps'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/alex/Desktop/CDSat/ncs-2.0.0-beta2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/alex/Desktop/CDSat/ncs-2.0.0-beta2'
make: *** [all] Error 2
alex@iskandhar:~/Desktop/CDSat/ncs-2.0.0-beta2$
Can somebody pls help me in this...?
Best regards
Alex
- David Monfort
- Offline
- Senior Member
-
- Posts: 77
- Thank you received: 0
This is our fault... We added a last-minute patch to the 2.0-beta2 version but forgot to test that it compiled without MPI support. And it does not

So, two solutions are possible at the moment:
- Wait a couple of days so that I can provide you with a patch (I have got one around)
- Compile Code_Saturne with MPI support (FVM and the kernel)
If you need more information, let me know.
Kind regards,
David
- Alex
- Topic Author
- Offline
- Senior Member
-
- Posts: 49
- Thank you received: 0
Thanks for your reply,

So now CS can, as default, make thermo-hydraulic coupling... ( through syrthes ) ? nice...
I have compiled Syrthes with icc/ifort/mkl, is it possible to do the same with Code Saturne...? or is it better to stick to gcc/gfortran...?
I ask this because I have already compiled my Code aster 10.* with Intel dev. tools... as well as OpenFOAM-1.6.x...
In relation to Code coupling... in case I want to perform a Fluid-Thermal-Structural coupling ( resorting to a FEA analysis code such as ASTER ) do I have to specify it in Code saturne, or must it be done in Code Aster *.comm file... ( in other words, can Aster launch Code Saturne so as to find the pressure field in the bounding structure of a flow domain, and calculate its deformation in order to re-calculate the flow quatities in the "deformed" flow domain... and so on... till both solutions (structural and flow ) stabilize in a time stationary analysis...)...
It would be interesting to use Code Saturne-Syrthes-Code Aster to analyze a Stirling Engine, for example...

Best regards
Alex
- Alex
- Topic Author
- Offline
- Senior Member
-
- Posts: 49
- Thank you received: 0
Good news and not so good news...

I Have compiled completely the Code Saturne applications, did it as user. In /home/alex/Code_Saturne/bin if i launched ./cs gui the interface would appear... so far so good,
So i mv /home/alex/Code_Saturne /usr/local
In my ~/.bashrc i added the following lines :
#####################################################################################################
#### Code Saturne 2.2.0
export PATH=/usr/local/Code_Saturne/bin:/usr/local/Code_Saturne/share/ncs:$PATH
#####################################################################################################
so why do when I open a new shell, so that the environment is set, if i type cs create, a strange message pops up... :
alex@iskandhar:~$ cs
Traceback (most recent call last):
File "/usr/local/Code_Saturne/bin/cs", line 40, in <module>
import cs_config
ImportError: No module named cs_config
alex@iskandhar:~$
There was no reference to cs_config when i did the same thing in /home/alex/Code_Saturne/bin... something is different now, I guess something is not correctly configured, but what...?
This may sound like a n00b question.. but i am clueless...

Thanks in advance
Alex
- David Monfort
- Offline
- Senior Member
-
- Posts: 77
- Thank you received: 0
Actually, Code_saturne has been able to do that for quite a long time, but SYRTHES has only been released open-source recently. We do not have yet a tutorial for the coupling setup but we will have a simple "how-to" soon.So now CS can, as default, make thermo-hydraulic coupling... ( through syrthes ) ? nice...
No problem! Intel compilers usually yield better performance (up to 20% in some cases); Code_Saturne can be compiled with icc/ifort and should automatically find MKL library for BLAS support. To use Intel compilers, do something like:[code:1]./configure --prefix=... CC=icc FC=ifort[/code:1].I have compiled Syrthes with icc/ifort/mkl, is it possible to do the same with Code Saturne...? or is it better to stick to gcc/gfortran...?
Actually, Code_Saturne/Code_Aster coupling is still under testing and will be done through the SALOME platform (YACS module to be precise). We still need to sort out a couple of things. At the moment, and depending on the simulation, you can run a fluid simulation, post-process a boundary part (in MED format) with only the pressure activated and then you run a Code_Aster simulation with this MED file as boundary conditions. This is not a coupled calculation but a chained one. To assess convergence, you can iterate the process.In relation to Code coupling... in case I want to perform a Fluid-Thermal-Structural coupling ( resorting to a FEA analysis code such as ASTER ) do I have to specify it in Code saturne, or must it be done in Code Aster *.comm file... ( in other words, can Aster launch Code Saturne so as to find the pressure field in the bounding structure of a flow domain, and calculate its deformation in order to re-calculate the flow quatities in the "deformed" flow domain... and so on... till both solutions (structural and flow ) stabilize in a time stationary analysis...)...
IndeedIt would be interesting to use Code Saturne-Syrthes-Code Aster to analyze a Stirling Engine, for example...

- David Monfort
- Offline
- Senior Member
-
- Posts: 77
- Thank you received: 0
What you cannot do is moving your installation in another place because some paths are "hard-coded" during the installation and furthermore the dynamic libraries will problably not be loaded because of the same "hard-coded" paths.
What you should do if you want to install Code_Saturne in /usr/local/Code_Saturne is:[code:1]./configure --prefix=/usr/local/Code_Saturne
make
sudo make install[/code:1]
Or really install it in /home/alex/Code_Saturne and leave it in place.
Let me know if it works.