← Back to team overview

fenics team mailing list archive

Re: Build time bugs in syfi and segfaults in dolfin

 



Balbir Thomas wrote:


Couple of more points:

I am attempting to rebuild dolfin 0.9.0 after switching the defaults in debian (as suggested by Harish, i.e. update-alternatives to openmpi), however build fails with the following error (oddly enough build did not fail before this change !! ).

mpic++ -o dolfin/swig/cpp_wrap.os -c -Wall -pipe -ansi -Werror -DDEBUG -g -DNDEBUG -O2 -DHAS_MPI=1 -DMPICH_IGNORE_CXX_SEEK -DPACKAGE_VERSION=\"0.9.0\" -DHAS_PETSC=1 -DHAS_SCOTCH=1 -DHAS_UMFPACK=1 -DHAS_GTS=1 -DHAS_CHOLMOD=1 -fno-strict-aliasing -fPIC -I. -I/usr/include -I/usr/include -I/usr/include/libxml2 -I/usr/lib/petsc/bmake/linux-gnu-c-opt -I/usr/lib/petsc/include -I/usr/lib/openmpi/include -I/usr/lib/openmpi/lib -Idolfin -I/usr/include/scotch -I/usr/include/suitesparse -I/usr/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/suitesparse -I/usr/include/python2.5 -I/usr/include/python2.5 -I/usr/lib/python2.5/site-packages/numpy/core/include -I/usr/include -I/usr/include -I/usr/include/libxml2 -I/usr/lib/petsc/bmake/linux-gnu-c-opt -I/usr/lib/petsc/include -I/usr/lib/openmpi/include -I/usr/lib/openmpi/lib -Idolfin -I/usr/include/scotch -I/usr/include/suitesparse -I/usr/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/suitesparse dolfin/swig/cpp_wrap.cc
cc1plus: warnings being treated as errors
dolfin/swig/cpp_wrap.cc: In function 'PyObject* _wrap_new_LUSolver(PyObject*, PyObject*)': dolfin/swig/cpp_wrap.cc:52898: error: 'argv[0]' may be used uninitialized in this function dolfin/swig/cpp_wrap.cc: In function 'PyObject* _wrap_summary(PyObject*, PyObject*)': dolfin/swig/cpp_wrap.cc:29895: error: 'argv[0]' may be used uninitialized in this function dolfin/swig/cpp_wrap.cc: In function 'PyObject* _wrap_new_TimeDependent(PyObject*, PyObject*)': dolfin/swig/cpp_wrap.cc:27852: error: 'argv[0]' may be used uninitialized in this function dolfin/swig/cpp_wrap.cc: In function 'PyObject* _wrap_new_Vector(PyObject*, PyObject*)': dolfin/swig/cpp_wrap.cc:48256: error: 'argv[0]' may be used uninitialized in this function dolfin/swig/cpp_wrap.cc: In function 'PyObject* _wrap_new_Table(PyObject*, PyObject*)': dolfin/swig/cpp_wrap.cc:30972: error: 'argv[0]' may be used uninitialized in this function dolfin/swig/cpp_wrap.cc: In function 'PyObject* _wrap_new_Mesh(PyObject*, PyObject*)': dolfin/swig/cpp_wrap.cc:79066: error: 'argv[0]' may be used uninitialized in this function dolfin/swig/cpp_wrap.cc: In function 'PyObject* _wrap_new_DiscreteFunction(PyObject*, PyObject*)': dolfin/swig/cpp_wrap.cc:63711: error: 'argv[0]' may be used uninitialized in this function
scons: *** [dolfin/swig/cpp_wrap.os] Error 1
scons: building terminated because of errors.

Looks like either -Werror flag will need to be done away with or cpp_wrap.cc may need to be fixed to elminate warnings. Unfortunately I am not familiar with scons to fix this.

Also I noticed though building dolfin requires MPI there is no explicit build dependency in the Build-Depends line of the debian/control file. It is listed as :

Build-Depends: debhelper (>= 5), python (>=2.5), python-central (>= 0.5.6), scons, swig (>= 1.3.36), python-dev, python-numpy, libgts-dev, libxml2-dev, libboost-dev, libsuitesparse-dev, petsc2.3.3-dev, ufc (>= 1.1)

Note: (Only change made by me are replacing python-all by python (>=2.5) and swig (>=1.3.37) by swig (>=1.3.36) for reasons discussed in this thread.

This line must also have "libopenmpi-dev" in it or better "libopenmpi-dev | libmpich1.0-dev" if fenics is indeed compatible with both openmpi and mpich and requires MPI (as suggested by enableMPI=1 in debian/rules)!.


MPICH comes in two flavours - MPICH and MPICH2. Although I have not tested it for some some, DOLFIN should work seamlessly with MPICH2. It will not work with MPICH because there is some old code in MPICH which caused build problems with DOLFIN (MPICH hasn't been updated for more then 3 years)

Garth



A minor point - VERSION=0.8.1 (in debian/rules) it should be 0.9.0 but it doesn't seem to be used.

ATTN Johannes :

Please do let me know if you need any information regarding the debian packages installed on my system to replicate the problems in this thread. It is a pretty standard Debian/Lenny install. You could email me directly if you prefer.

regards
bt

cc: Johannes


------------------------------------------------------------------------

_______________________________________________
FEniCS-dev mailing list
FEniCS-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/fenics-dev




References