Включение внешней библиотеки в приложение Qt

Я успешно использую библиотеку mosquitto в моем Qt-Widget-Application под Linux. Я хотел сделать то же самое для Windows 7 MSVC2015 x64, но я получаю ошибки компоновщика, которые я не понимаю.

Используя этот фрагмент в моем .pro-файле, где C: \ mosquitto — это путь к загруженной и предварительно скомпилированной библиотеке (.dll). Папка devel содержит заголовки и .lib-файлы.

INCLUDEPATH += C:/mosquitto/devel
DEPENDPATH += C:/mosquitto/devel
LIBS += -LC:/mosquitto/devel -LC:/mosquitto -lmosquitto -lmosquittopp

Я получаю ошибки компоновщика для 14 неразрешенных символов, как будто не было никаких библиотек. Я могу удалить строку «LIBS» и не получу больше неразрешенных символов. Если я неправильно пишу некоторые пути или имена в переменной LIBS, я получаю сообщение об ошибке, что mosquitto.lib не найден, поэтому пути в целом правильные.

Одним из советов может быть предупреждение от компоновщика: library machine type 'X86' conflicts with target machine type 'x64', Поэтому я скомпилировал исходники библиотеки вручную в x64. После этого то же самое появляется только с одним неразрешенным символом. Зачем?

Понятия не имею. Под Linux это было относительно легко. У меня проблемы с 32 / 64bit? Или есть какая-то другая зависимость, которую я пропустил?

Обновить:
Неразрешенный символ с -хорошо правильно скомпилированной -64-версией public: virtual void __cdecl mosqpp::mosquittopp::on_message(struct mosqpp::mosquitto_message const *), На данный момент я только открываю и публикую в MQTT-Connection: я не использую on_message (…) явно.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]