[aspect-devel] deal.ii problem during aspect compile, static libs

Wolfgang Bangerth bangerth at math.tamu.edu
Tue Jul 1 08:09:31 PDT 2014


Thorsten,
let me cross-post this to the deal.II mailing list.


On 07/01/2014 05:32 AM, Thorsten Becker wrote:
> Hi,
>
> I am trying to compile Aspect, so I thought this might be an appropriate place
> to post. After numerous attempts to compile shared libraries, I am now trying
> static. I'm on a cluster with
>
> Linux hpc-login2 2.6.32-431.11.2.el6.x86_64
>   mpicc --version
> gcc (GCC) 4.8.1
>
> I think I compiled p4est and trilinos statically the way it's described in the
> manual, but now I'm stuck with DEAL.II
>
> I use
>
> cmake28 -DDEAL_II_WITH_MPI=ON \
>      -DDEAL_II_WITH_P4EST=ON -DDEAL_II_WITH_TRILINOS=ON \
>      -DCMAKE_INSTALL_PREFIX=/home/rcf-106/twb/progs/src/deal.II/ \
>      -DP4EST_DIR=/home/rcf-106/twb/progs/src/p4est-0.3.4.2/ \
>      -DTRILINOS_DIR=/home/rcf-106/twb/progs/src/trilinos-11.4.3-Source/ \
>      -DDEAL_II_WITH_THREADS=OFF \
>      -DDEAL_II_STATIC_EXECUTABLE=ON ../
>
> to configure but then it bombs as below, apparently trying to use a .so
> library. I have no idea why.
>
> Any help would be much appreciated, I also attach my CMakeCahe file.
>
> Thanks!
>
> Thorsten
>
>
>
> Scanning dependencies of target obj_matrix_free.release
> [ 50%] Building CXX object
> source/matrix_free/CMakeFiles/obj_matrix_free.release.dir/matrix_free.cc.o
> [ 50%] Built target obj_matrix_free.release
> [ 50%] Generating data_out_faces.inst
> ../../common/scripts/expand_instantiations: /usr/lib64/libstdc++.so.6: version
> `GLIBCXX_3.4.14' not found (required by
> ../../common/scripts/expand_instantiations)
> ../../common/scripts/expand_instantiations: /usr/lib64/libstdc++.so.6: version
> `GLIBCXX_3.4.15' not found (required by
> ../../common/scripts/expand_instantiations)
> make[2]: *** [source/numerics/data_out_faces.inst] Error 1
> make[1]: *** [source/numerics/CMakeFiles/obj_numerics.inst.dir/all] Error 2

What the error message is saying is that in order to execute the 
expand_instantiations program (a program we compile as part of deal.II and 
need it during the process of building deal.II), it is looking for the two 
mention shared libraries -- which are C++ support libraries provided by the 
compiler.

My suspicion is the following:
1/ It requires two different ones because, possibly, you are compiling 
deal.II, Trilinos and/or p4est with different versions of the compiler, and it 
requires version 3.4.15 from the compiler used for deal.II and 3.4.14 is 
required for the Trilinos libraries, for example.

2/ It finds neither of these libraries because you are on a cluster where the 
frontend node (where we are trying to execute 'expand_instantiations') has a 
different operating system than the compute nodes (for which the compiler you 
call creates executables, unfortunately including the 'expand_instantiations' 
script that we need to execute on the frontend node, not the compute nodes).

Does any of this ring a bell?

Best
  Wolfgang


-- 
------------------------------------------------------------------------
Wolfgang Bangerth               email:            bangerth at math.tamu.edu
                                 www: http://www.math.tamu.edu/~bangerth/



More information about the Aspect-devel mailing list