David,
> I recently tried to install deal.II. However, when I run make test, all tests
> fails because of the following message
>
> /home/gudrun/davidkl/Documents/dealii/build/tests/quick_tests/step.debug:
> symbol lookup error: /lib64/libgsl.so.23: undefined symbol: cblas_ctrmv
>
> In detail.log produces by cmake it looks like libgslcblas is correctly found
>
> # DEAL_II_WITH_GSL set up with external dependencies
> # GSL_VERSION = 2.4
> # GSL_INCLUDE_DIRS = /usr/include
> # GSL_USER_INCLUDE_DIRS = /usr/include
> # GSL_LIBRARIES = /usr/lib64/libgsl.so;/usr/lib64/libgslcblas.so
>
> Furthermore, when I run the ldd command on the produced shared library file
> something strange happens
>
>
> ldd lib/
libdeal_II.g.so | grep gsl
>
> libgsl.so.23 => /lib64/libgsl.so.23 (0x00007f6d7eb4f000)
>
> Hence, there is no libgslcblas linked. Should that be linked?
Yes. If the GSL calls functions from the CBLAS, then the CBLAS should really
also be linked.
That's really a problem in the GSL, though. The libgsl.so should have recorded
during installation that it relies on CBLAS, and if it had, then linking with
libgsl.so would have automatically also pulled in libcblas.so. These sorts of
problems are really obnoxious for us because they assume that the deal.II
installation system works around installation problems in the GSL. We can't do
that for all of those broken libraries out there. The easiest approach is to
install a version of GSL that has this fixed.
> The other strange thing is that in detail.log it says that it uses
> /usr/lib64/libgsl.so, but when I check which library it actually linked to it
> is /lib64/libgsl.so.23, which is not in the same location as the one printed
> in detail.log.
>
> On my system there is one GSL version in /lib64 (which is a shared folder
> between many nodes), and one version in /usr/lib64, which is local on one
> node. It appears like the GSL library that is used is not the one stored in
> GSL_LIBRARIIES and that libgslcblas is not linked.
>
> Has anyone encountered similar problems?
This is certainly awkward. Are you saying that on the front-end node of the
cluster, the set of libraries available is different than on the compute
nodes? Where did you configure and compile deal.II, and where did you run the
ldd commands for which you show output above?
Best
W.
--
------------------------------------------------------------------------
Wolfgang Bangerth email:
bang...@colostate.edu
www:
http://www.math.colostate.edu/~bangerth/