Skip to content

Cannot build on Debian without libatlas #67

@olebole

Description

@olebole

On Debian, the atlas packages are going to be removed with the next release, which also affects the Astromatic packages (see f.e. Debian#1056688). As alternatives, we have openblas and lapack on their standard (Debian) places:

  • /usr/include/x86_64-linux-gnu/cblas.h and /usr/lib/x86_64-linux-gnu/libopenblas.so for openblas,
  • /usr/include/lapacke.h and /usr/lib/x86_64-linux-gnu/liblapacke.so for lapacke.

all these files are in the standard include resp. lib paths, and therefore no -I… or -L… flags would be needed. However, the configure step fails stating that

$ ./configure --enable-openblas
[…]
checking for openblas/cblas.h... no
checking for cblas.h lapacke.h... no
checking for openblas/lapacke.h... no
checking for cblas.h lapacke.h... (cached) no
configure: error: OpenBLAS header files not found! Exiting.

and with explicitly searching in /usr/include/x86_64-linux-gnu/

$ ./configure --enable-openblas --with-openblas-incdir=/usr/include/x86_64-linux-gnu
[…]
checking for /usr/include/x86_64-linux-gnu/cblas.h... yes
checking for library containing LAPACKE_dpotrf... no
configure: error: OpenBLAS library file not found! Exiting.

The mentioned function is however in lapacke.h:

$ grep LAPACKE_dpotrf /usr/include/lapacke.h 
lapack_int LAPACKE_dpotrf2( int matrix_layout, char uplo, lapack_int n, double* a,
lapack_int LAPACKE_dpotrf( int matrix_layout, char uplo, lapack_int n, double* a,
lapack_int LAPACKE_dpotrf2_work( int matrix_layout, char uplo, lapack_int n,
lapack_int LAPACKE_dpotrf_work( int matrix_layout, char uplo, lapack_int n,

I think that is a problem with the m4 autoconf macros that they are irritated the different (although standard) directories for cblas.h and lapacke.h. Could they be extended so that they also search in the standard include paths?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions