MEI installation on v2rc2

Hello

I have installed v2.0rc2 and everything went smoothly but when launching the GUI, none of the user’s law are available in the fluids properties, which I think means MEI is not working.

The installation of both MEI and NCS went ok, I’m attaching the config.log files for both packages.

I have the files inside the cs-2.0-rc2

lib/libmei.a
lib/python2.6/site-packages/mei/mei.p*
lib64/python2.6/site-packages/mei/_mei*

I tried linking the files under lib64 into lib but to no avail.

Any idea what is missing?

Cheers

Juan

PS. I’m using Linux 2.6.34-12-desktop #1 SMP PREEMPT 2010-06-29 02:39:08 +0200 x86_64 x86_64 x86_64 GNU/Linux

PS 2: code_saturne config output is :

Directories:
dirs.prefix = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2
dirs.exec_prefix = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2
dirs.bindir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/bin
dirs.includedir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/include
dirs.libdir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/lib
dirs.datarootdir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/share
dirs.datadir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/share
dirs.pkgdatadir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/share/ncs
dirs.docdir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/share/doc/ncs
dirs.pdfdir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/share/doc/ncs

Auxiliary information:
dirs.ecs_bindir = /usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/bin
dirs.syrthes_prefix =

MPI library information:
mpi_lib.type = OpenMPI
mpi_lib.bindir = /usr/lib64/mpi/gcc/openmpi/bin
mpi_lib.libdir = /usr/lib64/mpi/gcc/openmpi/lib

Compilers and associated options:
cc = /usr/lib64/mpi/gcc/openmpi/bin/mpicc
fc = gfortran
cppflags = -D_POSIX_SOURCE -DDEBUG -I/usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/include -I/usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/include -I/usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/include -I/usr/lib64/mpi/gcc/openmpi/include -I/usr/include/libxml2
cflags = -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 -g
fcflags = -x f95-cpp-input -Wall -Wno-unused -D_CS_FC_HAVE_FLUSH -g -fbounds-check
ldflags = -L/usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/lib -L/usr/local/Code_Saturne/v1.3.3/opt/cgnslib_2.5/arch/Linux_x86_64/lib -L/usr/local/salome_5.1.4/med-2.3.6/lib -L/usr/local/salome_5.1.4/hdf5-1.6.9/lib -L/usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/lib -L/usr/local/Code_Saturne/v2.0rc2/cs-2.0-rc2/lib -L/usr/lib64/mpi/gcc/openmpi/lib -Wl,-export-dynamic -g
libs = -lfvm -lm -lcgns -lmedC -lhdf5 -lfvm_coupl -lmei -lbft -lz -lxml2 -lblas -L/usr/lib64/gcc/x86_64-suse-linux/4.5 -L/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/lib -L/usr/lib64/gcc/x86_64-suse-linux/4.5/../../.. -lgfortran -lm -ldl
rpath = -Wl,-rpath -Wl,

Compilers and associated options for SYRTHES build:
cc =
fc =
cppflags =
cflags =
fcflags =
ldflags =
libs =
config-log_ncs.txt (117 KB)
config-log_mei.txt (37.5 KB)

Hello Juan,

To test the installation of MEI, what message do you obtain if you simply start python and type “import mei” in your Python terminal ?

If that doesn’t work, try typing:

import sys
sys.path.insert(0, ‘/usr/local/lib’)

import mei

What do you get then ?

Best regards,

Yvan

Thanks Yvan!

I tried it and I got an error:

import _mei
ImportError: ./_mei.so: undefined symbol: Py_InitModule4_64

so I realise I was using a different version of python (2.4 that comes with Salome and was still in my PATH) rather than the system one that I used to compile it (2.6) I have changed it and it works fine now. (although I still need to link the files under lib64/mei into lib/mei)

Cheers

Juan

Hello Juan,

To try to understand the lib64/lib issue, I would be interested in you configuration config.log and config.status flags both for MEI and for NCS. The autotools files for both seem to use the correct Python variables, but checking logs may help.

This won’t be an issue anymore in Code_Saturne 2.1, as we have replaced the Python wrapping by a simple executable syntax checker (the behavior appears the same to the user, but you won’t need SWIG anymore). But version 2.0 is “correction only” mode, so it will remain stuck with this.

Cheers,

Yvan

I think this may be related to to an automake stange behaviour… If you have a look at the MEI config.log (likewise for the kernel config.log), you’ll find the following directory definition:

pyexecdir=‘${exec_prefix}/lib64/python2.6/site-packages’
pythondir=‘${prefix}/lib/python2.6/site-packages’

We may need to also add pyexecdir directory (pythondir is based on sysconfig.get_python_lib… this is what we do) at the beginning of code_saturne.in.

What do you think?

David