On Tue, Jun 10, 2014 at 5:02 PM, Lukas Wensby <[email protected]> wrote:
> I'm sitting on a Debian / Jessie system and I've had a working installation
> of FEniCS for some months now but a few days ago it suddenly stopped
> working. I try to remember what the initial error message said but I have
> forgotten. I think it complained on the FFC or something. Anyway, so I
> thought I needed a refresh of my packages and saw that FEniCS was marked as
> to be removed. "No problem", I thought, as I just figured I'd reinstall it
> right after the updates. But of course now I can't locate FEniCS anywhere in
> aptitude.

The problem is that I uploaded version 1.4.0 of FFC, FIAT, Instant and
UFL last week but I'm still waiting on my sponsor to upload DOLFIN
1.4.0, so the packages are currently in a broken state in Debian.

> Instead I've tried installing it manually from source, manually
> adding some FEniCS PPA to my APT sources,

The FEniCS PPA is not usable on Debian.

> as well as using Dorsal. All
> attempts have showed very little success.
>
> When trying to install DOLFIN manually, I first downloaded the source code
> for FFC, FIAT, Instant and UFL and followed the given instructions. Then,
> for DOLFIN, I downloaded the source and as instructed did cmake into a build
> directory like so:
>
> mkdir build
> cd build
> cmake-gui ..
>
> This results in:
>
> CMake Warning at dolfin/CMakeLists.txt:318 (message):
> UFC compiled with different version of SWIG. Please install SWIG version
> 2.0.11 or recompile UFC with present SWIG.
>
> After some hassle I finally managed to install SWIG version 2.0.11,

It would probably be easier to recompile UFC with the present SWIG.

> so I
> removed the build directory of DOLFIN, created a new one and ran cmake only
> to find:
>
> CMake Warning at dolfin/CMakeLists.txt:318 (message):
> UFC compiled with different version of SWIG. Please install SWIG version
> 2.0.7 or recompile UFC with present SWIG.
>
> So downloading yet another SWIG version and running ./configure (with the
> option --without-octave to get it to work) I ran both make and make install
> successfully. Then once again I removed the DOLFIN build directory and
> repeated the steps above, but still got the same warning message. Now I
> didn't know if this warning message was important or not, so I decided to
> press on with the hope that it would work anyway. The cmake did after all
> create a make-file so why not try it?

The Python extension modules will not be built in this case and you
will end up with the problem below.

> Running make, that beautiful list started to appear in the console:
>
> Scanning dependencies of target dolfin
> [  0%] Building CXX object
> dolfin/CMakeFiles/dolfin.dir/nls/TAOLinearBoundSolver.cpp.o
> [  1%] Building CXX object
> dolfin/CMakeFiles/dolfin.dir/nls/PETScSNESSolver.cpp.o
> [  1%] Building CXX object
> dolfin/CMakeFiles/dolfin.dir/nls/NewtonSolver.cpp.o
>
> and so on... until after some tens of minutes it ended with:
>
> [ 98%] Building CXX object
> dolfin/CMakeFiles/dolfin.dir/fem/CCFEMAssembler.cpp.o
> [100%] Building CXX object dolfin/CMakeFiles/dolfin.dir/fem/Form.cpp.o
> [100%] Building CXX object dolfin/CMakeFiles/dolfin.dir/fem/UFC.cpp.o
> Linking CXX shared library libdolfin.so
> /usr/bin/ld: /usr/local/lib/vtk-5.10/libvtkCommon.a(vtkDataArray.cxx.o):
> relocation R_X86_64_32 against `.bss' can not be used when making a shared
> object; recompile with -fPIC
> /usr/local/lib/vtk-5.10/libvtkCommon.a: error adding symbols: Bad value
> collect2: error: ld returned 1 exit status
> dolfin/CMakeFiles/dolfin.dir/build.make:6366: recipe for target
> 'dolfin/libdolfin.so.1.4.0' failed
> make[2]: *** [dolfin/libdolfin.so.1.4.0] Error 1
> CMakeFiles/Makefile2:202: recipe for target
> 'dolfin/CMakeFiles/dolfin.dir/all' failed
> make[1]: *** [dolfin/CMakeFiles/dolfin.dir/all] Error 2
> Makefile:116: recipe for target 'all' failed
> make: *** [all] Error 2
>
> I don't know how to solve this. Is it some problem with VTK?

Yes. I see you have manually installed VTK in /usr/local. You will
need to rebuild this with either shared libs enabled or with the -fPIC
flag. Or use the packages in Debian.

> When trying to run the demo_poisson.py code I get:
>
> Traceback (most recent call last):
>   File "demo_poisson.py", line 37, in <module>
>     from dolfin import *
>   File "/usr/lib/python2.7/dist-packages/dolfin/__init__.py", line 16, in
> <module>
>     import cpp
>   File "/usr/lib/python2.7/dist-packages/dolfin/cpp/__init__.py", line 42,
> in <module>
>     exec("import %s" % module_name)
>   File "<string>", line 1, in <module>
> ImportError: No module named common
>
> In another FEniCS support thread, Johannes Ring's says that this problem of
> "No module named common" comes from DOLFIN and UFC not being built with the
> same version of SWIG, or that DOLFIN is not built with support for CGAL. He
> recommends building FEniCS from source to get DOLFIN with CGAL support.

No, that is not related to the problem with "No module named common".
You will need to rebuild UFC (now part of FFC) and DOLFIN with the
same version of SWIG.

> But
> I am building DOLFIN from source, and I don't know what to do with that SWIG
> problem. Is there anything blatantly wrong with my attempts here? To be
> fair, it is recommended to use Dorsal, but there is no supported
> platform-file for the system I am on (Debain / Jessie). I am going to try to
> tailor my own platform-file for but I don't have high hopes of that working
> since I'm fairly new to all of this.

You can use the platform file for Debian sid.

Johannes
_______________________________________________
fenics-support mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics-support

Reply via email to