VS2012 nmake using v110_xp toolset?

2020-05-27 02:28发布

Is there a way to use v110_xp toolset (instead of default "v110") when compiling with "nmake" ?

I'm trying to compile a Qt5 library for VisualStudio2012 and I need it to work on Windows XP machines too. I've managet to compile all Qt5 libraries using VS2012 with nmake, but even simple test applications fails to run on XP machines giving me the "The procedure entry point _except_handler4_common could not be located in the dynamic link library msvcrt.dll". (On Windows 7 machines my test application is working normally)

4条回答
做个烂人
2楼-- · 2020-05-27 02:44

Information that I was looking for can be found here: http://blogs.msdn.com/b/vcblog/archive/2012/10/08/windows-xp-targeting-with-c-in-visual-studio-2012.aspx (in "Targeting from the Command Line")

查看更多
三岁会撩人
3楼-- · 2020-05-27 02:50

nmake /E CC="cl /D_USING_V110_SDK71_ /D_WIN32_WINNT=0x0501" /f Makefile.vc

It is much easier when it is difficult to touch the make file.

查看更多
仙女界的扛把子
4楼-- · 2020-05-27 02:58
  1. Edit Makefile.Debug or Makefile.Release file
  2. Add -D_USING_V110_SDK71_ to DEFINES

Example:

DEFINES = -D_USING_V110_SDK71_ -DUNICODE -DWIN32 -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG

Good luck!

查看更多
Root(大扎)
5楼-- · 2020-05-27 03:06

It is easier to edit mkspecs\win32-msvc2012\qmake.conf before you run configure. Edit the DEFINES += line and add the following:

WIN32 _USING_V110_SDK71_

You will have to stash and pop this change whenever you pull.

查看更多
登录 后发表回答