CMake не может найти библиотеку LAPACK на windows - PullRequest
0 голосов
/ 16 июня 2020

Я пытаюсь создать проект C ++, используя CMake , который включает библиотеку LAPACK в системе win32 .

Следуя документальному фильму LAPACK для windows,

Я установил 32 бита MinGW и добавил "C: \ MinGW \ bin" в путь, затем поместил загруженные предварительно созданные библиотеки: libblas.lib , libblas.dll, liblapack.lib, liblapack.dll в пути "\ projectRoot \ 3rdparty \ LAPACK"

Структура папок следующая:

\projectRoot
    \CMakeLists.txt
    \3rdparty
         \LAPACK
             libblas.lib
             ...

в файле CMakeLists , Я добавил

set(LAPACK_DIR "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/LAPACK")
find_package(LAPACK REQUIRED)

, но получил ошибку:

CMake Error at C:/Program Files/CMake/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
  Could NOT find BLAS (missing: BLAS_LIBRARIES)
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)
  C:/Program Files/CMake/share/cmake-3.16/Modules/FindBLAS.cmake:810 (find_package_handle_standard_args)
  C:/Program Files/CMake/share/cmake-3.16/Modules/FindLAPACK.cmake:197 (find_package)
  CMakeLists.txt:17 (find_package)

и до ошибки CMake не смог найти что-то

Looking for sgemm_
Looking for sgemm_ - not found
Looking for pthread.h
Looking for pthread.h - not found
Found Threads: TRUE  

Я могу ' t выяснить, в чем причина проблемы.

Заранее спасибо, если вы могли бы поделиться своим опытом.

1 Ответ

0 голосов
/ 22 июня 2020

Ответьте на мой вопрос.

Наконец, что я сделал, чтобы найти пакет:

Скопируйте собранную версию из jlblancoc / suitesparse-metis-for- windows, затем используйте режим конфигурации find_package с помощью

set(LAPACK_DIR "dir/to/lapacklibs")
find_package(LAPACK CONFIG REQUIRED)
...