Есть ли способ использовать v110_xp набор инструментов (вместо значения по умолчанию «v110») при компиляции с помощью «nmake»?
Я пытаюсь скомпилировать библиотеку Qt5 для VisualStudio2012, и мне нужно, чтобы она работала также на компьютерах с Windows XP. Мне удалось скомпилировать все библиотеки Qt5 с использованием VS2012 с помощью nmake, но даже простые тестовые приложения не запускаются на машинах XP, что дает мне «Не удалось найти точку входа в процедуру _except_handler4_common в библиотеке динамических ссылок msvcrt.dll«. (На машинах с Windows 7 мое тестовое приложение работает нормально)
Пример:
DEFINES = -D_USING_V110_SDK71_ -DUNICODE -DWIN32 -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG
Удачи!
Информацию, которую я искал, можно найти здесь: http://blogs.msdn.com/b/vcblog/archive/2012/10/08/windows-xp-targeting-with-c-in-visual-studio-2012.aspx (в разделе «Таргетинг из командной строки»)
Проще отредактировать mkspecs \ win32-msvc2012 \ qmake.conf перед запуском configure.
Отредактируйте строку DEFINES + = и добавьте следующее:
WIN32 _USING_V110_SDK71_
Вы должны будете прятать и вставлять эти изменения всякий раз, когда вы тянете.
nmake /E CC="cl /D_USING_V110_SDK71_ /D_WIN32_WINNT=0x0501" /f Makefile.vc
Гораздо проще, когда сложно дотронуться до файла make.