Skip to content

CMake: issues with changes to BLAS introduced in #927, wrong use of nonexistent BLAS_INCLUDE_DIRS #1028

Open
@yannleretaille

Description

@yannleretaille

Hey,

PR #927 switched from openblas to supporting generic blas providers. This is done using CMakes official FindBLAS.cmake. However, this implementation comes with known limitations and does not actually provide BLAS_INCLUDE_DIRS.
The current implementation will therefore work only if the system or chosen blas uses the /usr/inlude folder, which is often not the case.

For example, on my system, which I have set to openblas, the include dir is /usr/include/openblas64:

File: /usr/lib/pkgconfig/blas64.pc
libdir=/usr/lib
libsuffix=_64
includedir=/usr/include/openblas64

openblas_config=USE_64BITINT=1 NO_CBLAS= NO_LAPACK= NO_LAPACKE= DYNAMIC_ARCH=ON DYNAMIC_OLDER=OFF NO_AFFINITY=ON USE_OPENMP=1 SKYLAKEX MAX_THREADS=64
Name: OpenBLAS
Description: OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version
Version:
URL: https://github.com/xianyi/OpenBLAS
Libs: -fopenmp -L${libdir} -lopenblas${libsuffix}
Cflags: -I${includedir}

You might want to look at how other projects have implemented findBLAS:

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions