Копирование DLL-файлов Qt4 в исполняемый каталог в Windows с помощью CMake - PullRequest
0 голосов
/ 12 октября 2018

Мне нужно скопировать библиотеки qt4, используемые в каталоге установки, с помощью CMake в Windows, я прочитал этот ответ для Qt4, но он не работал для меня: Копирование DLL-файлов Qt в исполняемый каталог в Windows с использованием CMake

Обратите внимание, что аналогичный вышеописанный подход работает для linux для Qt4, но не для windows

Как я могу найти расположение библиотек Qt4 на окнах и скопировать их?

1 Ответ

0 голосов
/ 12 октября 2018

Я наконец-то нашел справку по этой ссылке: https://cmake.org/pipermail/cmake/2008-June/022461.html

Расположение dll Qt4 можно найти с помощью переменной $ {QT_QMAKE_EXECUTABLE}

Я использовал следующий код для копирования своих dllна основании вышеуказанной ссылки:

SET (QTLIBLIST QtCore QtGui)

if (${CMAKE_HOST_UNIX})
   FOREACH(qtlib ${QTLIBLIST})
      string (TOUPPER ${qtlib} upper_qtlib)
      INSTALL(FILES ${QT_${upper_qtlib}_LIBRARY_DEBUG} DESTINATION ./bin/debug CONFIGURATIONS Debug)
      INSTALL(FILES ${QT_${upper_qtlib}_LIBRARY_RELEASE} DESTINATION ./bin CONFIGURATIONS Release)
   ENDFOREACH (qtlib)

else()
   GET_FILENAME_COMPONENT(QT_DLL_PATH_tmp ${QT_QMAKE_EXECUTABLE} PATH)

   FOREACH(qtlib ${QTLIBLIST})
         INSTALL(FILES ${QT_DLL_PATH_tmp}/${qtlib}d4.dll DESTINATION .//bin/debug CONFIGURATIONS Debug)
         INSTALL(FILES ${QT_DLL_PATH_tmp}/${qtlib}4.dll DESTINATION ./bin CONFIGURATIONS Release)
   ENDFOREACH (qtlib)
endif()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...