Когда я использую cmake
с VS 2019 (win10) , нет меню свойств проекта для установки дополнительных зависимостей. Я думаю, что я должен сделать это, используя cmake
команды в cmakelists.txt
файле. Я могу построить с Armadillo
, но если .cpp
включает в себя det(A)
, сборка команд создает ошибку компоновщика. Я думаю, что не смогу связать с библиотеками blas и lapack.
Я включил каталог Armadillo\armadillo-9.800.1\include
. Я также включил каталог Armadillo\armadillo-9.800.1\examples\lib_win64
, но этого не достаточно, если я правильно понял. Мне нужно знать соответствующую команду для установки дополнительных зависимостей VS в cmake
.
Я получаю сообщение об ошибке: LNK2019 unresolved external symbol dgetrf referenced in function void __cdecl arma::lapack::getrf<double>(int *,int *,double *,int *,int *,int *)
Содержимое cmakelists.txt:
project(CMakeProject9)
cmake_minimum_required (VERSION 3.8)
# Add source to this project's executable.
add_executable (CMakeProject9 "CMakeProject9.cpp" "CMakeProject9.h")
# TODO: Add tests and install targets if needed.
target_include_directories(CMakeProject9 PRIVATE "C:/Projects/Armadillo/armadillo-9.800.1/include" "C:/Projects/Armadillo/armadillo-9.800.1/examples/lib_win64")
target_link_libraries(CMakeProject9 PRIVATE "C:/Projects/Armadillo/armadillo-9.800.1/examples/lib_win64")
Даже если я удаляю команды связывания из файла cmakelists.txt (добавление ниже) Я получаю ту же ошибку. Они неэффективны. Или я не могу использовать их правильно.
project(CMakeProject9)
cmake_minimum_required (VERSION 3.8)
# Add source to this project's executable.
add_executable (CMakeProject9 "CMakeProject9.cpp" "CMakeProject9.h")
# TODO: Add tests and install targets if needed.
target_include_directories(CMakeProject9 PRIVATE "C:/Projects/Armadillo/armadillo-9.800.1/include")