CMake Ошибка в C: / Program Files / CMake / share / cmake-3.16 / Modules / FindPackageHandleStandardArgs.cmake: 146 (сообщение) - PullRequest
0 голосов
/ 14 марта 2020

Я пытаюсь использовать cmake для компиляции dar knet для YOLO V3. Но я получаю следующую ошибку:

Ошибка CMake в C: / Program Files / CMake / share / cmake-3.16 / Modules / FindPackageHandleStandardArgs.cmake: 146 (сообщение): Не удалось найти PThreads_ windows (отсутствует: PThreads_windows_LIBRARY PThreads_windows_INCLUDE_DIR) Стек вызовов (самый последний вызов в первую очередь): C: / Программные файлы / CMake / share / cmake-3.16 / Modules / FindPackageHandleStandardArgs.ILmaA_SFA 39 (EN) MAXESGE 39CMAKESFA_FAKE 39ESSE_FAKE_SAKESHESGE 39SAFAHESGE 39C_FAKE_SAKESHESFE 39_C_Amp_AmpSE_HESE_SFA 39_C_Amp_E_P_P_PERT_S_F_40_40_00_32_1_P_P_S_S_F_2: 39 Модули / FindPThreads_ windows .cmake: 39 (find_package_handle_standard_args)
C: / Users / MSI / vcpkg / scripts / buildsystems / vcpkg.cmake: 288 (_find_package) CMakeLists.txt: 93 1006)

Как я могу это исправить?

1 Ответ

0 голосов
/ 25 марта 2020

Вы определили CMAKE_TOOLCHAIN_FILE как vcpkg. Если эта переменная определена, dar knet по умолчанию будет думать, что вы сконфигурировали pthread_window в vcpkg (это происходит примерно в 30-40 строках в CMakeLists.txt), но на самом деле это не так. Таким образом, вам нужно заменить

if(WIN32 AND NOT DEFINED CMAKE_TOOLCHAIN_FILE)
  set(USE_INTEGRATED_LIBS "TRUE" CACHE BOOL "Use libs distributed with this repo")
else()
  set(USE_INTEGRATED_LIBS "FALSE" CACHE BOOL "Use libs distributed with this repo")
endif()

на

set(USE_INTEGRATED_LIBS "TRUE" CACHE BOOL "Use libs distributed with this repo")

Это позволит dar knet использовать собственные сторонние потоки в каталоге root.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...