2010-08-17 2 views
2

$ {QT_LIBRARIES} кажется, что «когда я делаю сообщение (« $ {QT_LIBRARIES} »), есть общее подозрение, что оно не установлено должным образом. На самом деле это не похоже на то, что любой из атрибутов правильно устанавливается find_package (Qt4 REQUIRED). Есть идеи?

Я также попытался find_package (Qt4 4.6.2 КОМПОНЕНТЫ QtCore QtGui ОБЯЗАТЕЛЬНО)

, и я знаю, что он находит отдельные библиотеки Qt (от CMake-GUI).

Заранее благодарен!

ответ

5

Вы должны указать фактические библиотеки Qt, нужно, как это: (цитата со страницы человека)

find_package(Qt4 4.4.3 COMPONENTS QtCore QtGui QtXml REQUIRED) 
+0

Я видел это раньше (и проверял его), но он по-прежнему не определяет $ {QT_LIBRARIES} =/ – Cenoc

+0

@Cenoc: это странно, это работает для меня. Вероятно, вам нужно посмотреть в '/ usr/share/cmake/Modules/FindQt4.cmake' (или аналогичном в вашей системе), чтобы узнать, что происходит. – jpalecek

+0

Это версия 2.8, кажется, что она должна быть установлена. Ну, это работает, если я свяжусь в $ {QT_QTCORE_LIBRARY}, $ {QT_QTGUI_LIBRARY}, $ {QT_OPENGL_LIBRARY} вручную, но было бы неплохо/чище использовать $ {QT_LIBRARIES}. – Cenoc

2

Стадию Я думаю, что вам не хватает в том,

include(${QT_USE_FILE})

Это будет загрузите переменную QT_LIBRARIES, добавьте модули, которые вы запросили, к пути включения компилятора. Если вы не включаете файл использования, вам необходимо отдельно установить ссылку на ядро ​​Qt и т. Д. Большая часть этой информации находится в файле FindQt4.cmake, который используется, когда вызывается find_package (все модули поиска записывают свое собственное поведение).

Смежные вопросы