← Back to team overview

fenics team mailing list archive

Re: Build time bugs in syfi and segfaults in dolfin -- Partially Fixed

 

Hi,

Looks like Harish was right. Rebuilding after update alternatives does seem
to solve the problem with C++ files. Of course I had to edit the scons file
and remove "-Werror" to build dolfin. I am now able to build and
successfully run the C++ demos (have not tested them all). This does
indicate Fenics has problems with mpich. Perhaps the build scripts and
dependencies in the packaging system need to take this into consideration.
Also  a note in big bold letters would help :-) .

However the python demos fail (at least all the ones I checked). For
instance demo/pde/poisson/python/demo.py produces the following error :

bt@ps:$ python demo.py
[darwin:04934] mca: base: component_find: unable to open osc pt2pt: file not
found (ignored)
Checking mesh ordering (finished).
Calling just-in-time (JIT) compiler, this may take some time... WARNING:
Didn't find dolfin.i in include paths returned from pkg-config.
In instant.recompile: The module did not compile, see
'/tmp/tmp0FoES72009-2-12-01-13_instant/dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e/compile.log'
Traceback (most recent call last):
  File "demo.py", line 31, in <module>
    u0 = Constant(mesh, 0.0)
  File "/usr/lib/python2.5/site-packages/dolfin/constant.py", line 38, in
Constant
    return Function(V, cppexpr)
  File "/usr/lib/python2.5/site-packages/dolfin/function.py", line 498, in
__new__
    cpp_base = compile_function([cpparg],[defaults])[0]
  File "/usr/lib/python2.5/site-packages/dolfin/compile_function.py", line
335, in compile_function
    function_classes =
compile_function_code("\n\n".join(code_snippets),classnames)
  File "/usr/lib/python2.5/site-packages/dolfin/compile_function.py", line
272, in compile_function_code
    signature      = module_name
  File "/usr/lib/python2.5/site-packages/instant/build.py", line 423, in
build_module
    recompile(modulename, module_path, setup_name, new_compilation_checksum)
  File "/usr/lib/python2.5/site-packages/instant/build.py", line 101, in
recompile
    "compile, see '%s'" % compile_log_filename)
  File "/usr/lib/python2.5/site-packages/instant/output.py", line 49, in
instant_error
    raise RuntimeError(text)
RuntimeError: In instant.recompile: The module did not compile, see
'/tmp/tmp0FoES72009-2-12-01-13_instant/dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e/compile.log'


The contents of
/tmp/tmp0FoES72009-2-12-01-13_instant/dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e/compile.log
show

bt@ps:$ more
/tmp/tmp0FoES72009-2-12-01-13_instant/dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e/compile.log
dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e.i:97: Error: Unable
to find 'dolfin.i'
running build_ext
building '_dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e'
extension
creating build
creating build/temp.linux-i686-2.5
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall
-Wstrict-prototypes -fPIC
-I/home/bt/debian/sources/dolfin/dolfin-0.9.0/debian/tmp/include -I/
usr/lib/python2.5/site-packages/numpy/core/include
-I/usr/include/suitesparse -I/usr/include/python2.5
-I/usr/lib/petsc/bmake/linux-gnu-c-opt -I/usr/lib/petsc
/include -I/usr/lib/openmpi/include -I/usr/lib/openmpi/lib -I.
-I/usr/include/scotch -I/usr/include/libxml2 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/includ
e -I/usr/lib/python2.5/site-packages/numpy/core/include
-I/usr/include/python2.5 -c
dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e_wrap.cxx -o build
/temp.linux-i686-2.5/dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e_wrap.o
gcc: dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e_wrap.cxx: No
such file or directory
gcc: no input files
error: command 'gcc' failed with exit status 1

The contents of the temporary folder are

bt@ps:$ tree
/tmp/tmp0FoES72009-2-12-01-13_instant/dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e/
/tmp/tmp0FoES72009-2-12-01-13_instant/dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e/
|-- __init__.py
|-- build
|   `-- temp.linux-i686-2.5
|-- compile.log
|-- dolfin_compile_function_c2c6ca28e8e29b2498da8bbcedb6ff5e.i
`-- setup.py

So I note dolfin.i and the cxx file could not be found. Where are these
supposed to be and or what is supposed to generate them ? I would be
grateful for any other suggestions to help fix these.

PS: i still need to read the manual but am distracted by having to build and
install dolfin correctly. So apologies if i should know something i dont.

regards
bt

Follow ups