Undefined symbol related to BLAS and GSL in make test

24 views
Skip to first unread message

David Kleiven

unread,
Jun 13, 2019, 12:57:40 PM6/13/19
to deal.II User Group
Dear deal.II users,

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?

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?

Thanks in advance for any help,

David

Wolfgang Bangerth

unread,
Jun 16, 2019, 11:03:20 PM6/16/19
to dea...@googlegroups.com

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/

David Kleiven

unread,
Jun 17, 2019, 3:53:48 AM6/17/19
to dea...@googlegroups.com
Hi,

ok, thanks for your input. It seems to be just a broken GSL installation. I downloaded GSL and compiled from source and everything seems to be working fine.

Thanks,
David

--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dealii+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/517ddf3a-909f-b350-1eba-97eb028e51e6%40colostate.edu.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages