Сборка Qt для Visual Studio 2010 - не удается открыть файл 'qtmaind.lib' - PullRequest
4 голосов
/ 09 сентября 2011

Я пытаюсь запустить приложение C ++ Qt и запустить его и скомпилировать в Visual Studio 2010.

При поиске, я обнаружил, что существует надстройка Visual Studio Qt, и поэтому яустановил это.У меня уже был установлен двоичный файл MinGW Qt, и когда это не сработало, я обнаружил, что вам необходимо скомпилировать исходный код для Visual Studio 2010 (двоичный файл VS 2008 вызовет проблемы с развертыванием).

Использование этого в качестверуководство: Как собрать Qt для Visual Studio 2010 , я скомпилировал версию с открытым исходным кодом и добавил ее в PATH вместе с переменной env QTDIR.В надежде, что я наконец-то заработал, я создал «Приложение Qt» с помощью мастера создания проектов в Visual Studio 2010. После завершения я попытался собрать программу только для того, чтобы увидеть следующую ошибку:

1>LINK : fatal error LNK1104: cannot open file 'qtmaind.lib'

Я заглянул в папку C: \ QT \ lib и обнаружил, что у меня есть только qtmaind.prl, но я не знаю, почему нет qtmaind.lib.

Я могу повторитьПеременная окружения QMAKESPEC для получения вывода 'win32-msvc2010'.

Я попробовал несколько различных комбинаций флагов для шага настройки, включая один в ссылке, и даже попытался вручную установить флаг -platform.

Если кто-нибудь может предложить какую-либо помощь, она будет принята с благодарностью!: D

Ответы [ 4 ]

6 голосов
/ 08 ноября 2011

Просто столкнулся с этой же проблемой.Я изменил флаг «-release» из связанного руководства на «-debug-and-release», а затем собрал библиотеку qtmaind.lib (предположительно, суффикс «d» обозначает отладку).

1 голос
/ 02 сентября 2013

Я столкнулся с этой проблемой при запуске проекта, настройки которого были жестко заданы для конкретной установки компьютера.

Я мог видеть, что файл vcxproj имел что-то вроде: C: \ Qt \ 4.8.1 \ libqtmaind.lib

Я не смог найти этот файл lib на моей машине.Я заменил строку на: C: \ Qt \ 4.7.3 \ lib \ Qtmaind.lib

Похоже, что имена библиотечных файлов различаются в разных версиях Qt. Или, возможно, библиотечные файлы были переименованы.

Кроме того, 'd' обозначает отладку.Если вы не можете найти какой-либо lib-файл, исправленный после 'd', скорее всего, вы не 'сделали' отладочную версию Qt.Вы можете перепроверить это, открыв файл .Sln, созданный с помощью configure.Моя была названа Projects.sln.Вы можете открыть это в блокноте и посмотреть, присутствуют ли конфигурации отладки win32.

0 голосов
/ 05 октября 2014

в QT 5.3 с 2013

в свойствах -> компоновщик -> ввод

удалить ЛЮБОЙ путь для библиотек qt, таких как qtmaind.lib

это известная ошибка

0 голосов
/ 09 сентября 2011

Это может быть QMAKESPEC проблема.Попробуйте установить переменную окружения QMAKESPEC на

win32-msvc2010

и пересобрать Qt следующим образом.Это должно дать вам .lib файлы в вашей папке Qt

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