This is a read only copy of the old FEniCS QA forum. Please visit the new QA forum to ask questions

Expressions stopped working after gcc update

0 votes

Hi,

Expressions suddenly stopped working after updating gcc from 5.2.0 to 5.3.0. The problem looks similar to here, http://fenicsproject.org/qa/7402/expression-does-not-work-anymore, but the cause different, so I made a new thread.

f = Expression('1.0')
...
RuntimeError: In instant.recompile: The module did not compile with command 'make VERBOSE=1', see '/home/david/.instant/error/dolfin_compile_code_04b4bcee879b3df8e165c73cb2186ae49d7b7709/compile.log'

compile.log: http://pastebin.com/eNDLE5cC,
where the important line is:

make[2]: *** No rule to make target '/usr/lib/gcc/x86_64-unknown-linux-gnu/5.2.0/../../../../lib/libgfortran.so', needed by '_dolfin_compile_code_04b4bcee879b3df8e165c73cb2186ae49d7b7709.so'.  Stop.

This is reasonable, since after updating gcc from version 5.2.0 to 5.3.0, the indicated path doesn't exist anymore. Is it possible to correct the reference somewhere, so that I can avoid recompiling everything? I don't know where to look.

Thanks a lot.

Edit: I use a hashdist build.

asked Dec 16, 2015 by dajuno FEniCS User (4,140 points)
edited Dec 16, 2015 by dajuno

1 Answer

+1 vote
 
Best answer

The reference to libgfortran.so is stored in <dolfin-install-prefix>/share/dolfin/cmake/DOLFINTargets-release.cmake. The file will be write protected since you are using hashdist, so you will have to change permission before you can modify it.

I will still recommend to do a full rebuild though.

answered Dec 17, 2015 by johannr FEniCS Expert (17,350 points)
selected Dec 17, 2015 by dajuno

Thanks for the advice.
Unfortunately, building boost fails with gcc 5.3.0:

error 'Please use the same version of GCC and g++ for compiling MPICH and user MPI programs'

full log: https://gist.github.com/dajuno/73854439a55f1ab616c3

maybe something for the mailing list?

edit: sorry, the problem is (I think) that mpi wasn't recompiled, hashdist is using the old build. I wonder if there is a way to force hashdist to rebuild everything from scratch.. until the new version works I don't really like to delete the working build.

...