Visual C++ 2010 Express: как использовать с Qt?

Я смущен тем, что Qt работает с Visual Studio Express. Большинство поисков в интернете появились инструкции по компиляции Qt с использованием таких инструкций, как:

  • установить MSVC2005 или MSVC2008
  • установите самый последний SDK платформы (@ MSDN: "Platform SDK for Windows Сервер 2003 R2")
  • из SDK платформы вам нужно будет установить по крайней мере базу + параметры интернета
  • затем загрузите и извлечение последнего снимка или предварительного выпуска D:Qt4.х.х
  • Откройте консоль с загруженными настройками MSVC (см. MSVC Tools-menu) и заходим в свой Qt в каталоге
  • введите "configure-platform win32-msvc2005" без предложения Маркс!--5-->
  • это создаст вам файлы проекта, которые вам понадобятся
  • после этого, это так же просто, как запустить "nmake" и пить много кофе!--5-->

затем добавить D:Qt4 - ... х.х bin и D:Qt4.X. xlib на ваш путь переменная окружения, и вы будете возможность использовать эту версию Qt из везде в вашей системе. Последний можно добавить в раздел библиотеки в опциях из MSVC также.

(от http://www.qtcentre.org/threads/11710-Visual-Studio-2005-Express)

однако, когда я иду на страницу загрузки Qt (http://qt.nokia.com/downloads), есть загрузка для Visual Studio помеченный: "Qt библиотеки 4.7.1 для Windows (VS 2008, 228 МБ)"

Я в замешательстве, мне все еще нужно его построить? Или он уже построен?

4 ответов


использование загружаемого exe из qt (http://get.qt.nokia.com/qt/source/qt-win-opensource-4.7.1-vs2008.exe) не работает с Visual Studio 2010. Я попытался создать простую программу hello world из командной строки, которая не будет работать. Я повторю свой комментарий из предыдущего ответа.

я попробовал пример hello world из doc.qt.nokia.com/4.7/gettingstartedqt.html. Я смог построить проект и ехе не создается. Однако, ехе неудачи для запуска и создания системы диалоговое окно об ошибке " бок о бок неверная конфигурация...". Я побежал SxsTrace и говорит:

...
INFO: Begin assembly probing.
INFO: Did not find the assembly in WinSxS.
INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC90.DebugCRT\ 9.0.21022.8__...\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\qthello\debug\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\qthello\debug\Microsoft.VC90.DebugCRT.MANIFEST.
INFO: Attempt to probe manifest at C:\qthello\debug\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.DLL.
INFO: Attempt to probe manifest at C:\qthello\debug\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.MANIFEST.
INFO: Did not find manifest for culture Neutral.
INFO: End assembly probing.
ERROR: Cannot resolve reference Microsoft.VC90.DebugCRT,processorArchitecture="x86", publicKeyToken="...",type="win32",version="9.0.21022.8".
ERROR: Activation Context generation failed.
End Activation Context Generation.

Мне кажется, что он пытается использовать VS2008 (которого у меня нет). Оно делает смысл, я думаю, так как загрузка для VS2008.

Я был в процессе компиляции qt 4.7.1, используя инструкции в моем вопросе (используя win32-msvc2010 в качестве моей целевой платформы), поскольку я задал этот вопрос SO и компиляция закончилась. Я перестроил проект hello world, и exe работает. Таким образом, похоже, что ответ заключается в том, чтобы использовать с Visual Studio Express 2010 вам в настоящее время нужно скомпилировать (по крайней мере, пока Qt не выпустит опцию загрузки VS2010). Однако я считаю, что если вы используете VS2008, вам не нужно будет компилировать.


двоичные файлы Qt, предоставляемые Nokia для Windows, предназначены для MinGW или Visual Studio 2008, как для компиляции 32-битных исполняемых файлов. Если вам нужны двоичные файлы Qt для VS 2005 (32bit), вы можете найти их в своих архивах.

для всего остального вам нужно скомпилировать Qt самостоятельно. Специально для:

  • Visual Studio 2008 64 бит
  • Visual Studio 2008 Express Edition 64 бит: вам нужен Windows SDK 7.0, который предоставляет 64-битные компиляторы и компилирует Qt с теми.
  • Visual Studio 2010 32 бит и 64 бит

В общем случае вы не можете связывать библиотеки, скомпилированные с разными компиляторами, т. е. использовать двоичные файлы Qt, построенные с 32 битами VC 9.0 (VS 2008), и связывать их с исполняемым файлом, построенным с 32 битами VC 10.0 (VS 2010).


просто небольшое обновление об этом. Загрузка QTSDK (и использование cmake вместо qmake все выглядит довольно хорошо. За исключением того, что установщик QTSDK не обновил путь для qmake.exe и вы должны сделать вручную.

протестировано с помощью QtSDK 4.8 и visual studio express 2010


http://qt.nokia.com/downloads имеет ссылку под названием qt-vs-addin-1.1.7.exe (57 МБ)

вам, вероятно, понадобится и этот . .

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

итак, получите 228 MB libs и 57 MB plugin, и вы должны быть установлены.

отказ от ответственности: я не использую MSVC (пока? пожалуйста, дайте мне знать, если это сработает.