Ошибка модуля Qt - LNK 1112 в QtOpenGL

Я пытаюсь собрать проект (x64), связанный с библиотекой Qt в Microsoft Visual Studio 2010. Проект, который я хочу скомпилировать, был создан с использованием Visual Studio 2008.

Я добавил все зависимости, скачал скомпилированную 64-битную библиотеку Qt и сделал все необходимые изменения в свойствах проекта в VS 2010. Хотя я получаю ошибку ниже:

 Error  2616 error LNK1112: module machine type 'X86' conflicts with
 target machine type 'x64'  D:\project\Windows\QtOpenGL4.lib(QtOpenGL4.dll)

Я проверил мои.dll и.lib файлы, и они в 64-битной версии. Кроме того, мой файл QtOpenGL4.dll находится по другому пути, чем упомянутый в ошибке.

Может ли это быть ошибкой модуля QtOpenGL4? Как я мог решить это? Не могли бы вы мне помочь?

Инструкции, которым я следовал для сборки 64-битной версии Qt, находятся по этой ссылке: https://en.wikibooks.org/wiki/Opticks_Developer_Guide/Getting_Started/Building_Qt_From_Source

2 ответа

Наконец я нашел решение в своей ошибке. Я снова скомпилировал библиотеку Qt в 64-битной версии и ввел все правильные значения в свойствах проекта. Я также вошел в правильный путь в

Свойства проекта -> Компоновщик -> Ввод -> Дополнительные зависимости.

С правильными путями это решило ошибку связи для меня.

Я должен упомянуть, что я также скачал скомпилированные библиотеки из ответов в этой ссылке. Как скомпилировать Qt для 64-битной Windows из 32-битной среды с Visual C++ 2010 Express?

Вы, вероятно, пытаетесь связать свой 64-битный проект с 32-битными библиотеками Qt.

Это говорит больше об ошибке, с которой вы сталкиваетесь.

Точно так же, если вы создадите один модуль с компилятором x64 и другой модуль с компилятором x86 и попытаетесь связать их, компоновщик сгенерирует LNK1112.

Проверьте, используете ли вы 64-битные скомпилированные библиотеки Qt.

Другие вопросы по тегам