VC14 指的是 VS2015 及以上版本, 例如 VS2015 官方称之为 VC140, 其面向 XP 的子系统是 VC140_xp, VS2017 则分别是 VC141 和 VC141_xp.
然而我们在实际开发的过程中, 会发现用有时候用 VC14Linker 静态编译的程序无法在 XP 上运行.
打开易的安装目录下的 tools\link.ini(注意:如果是用非管理员权限打开的 e.exe, 那么 link.ini 应当在 *%USERPROFILE%\AppData\Local\VirtualStore\Program Files (x86)\e\tools\link.ini) 在 extra_args 这一项添加 /subsystem:console,5.01 , 5.01 代表 XP. - 我自己对应 VC14Linker 的完整 extra_args 如下:
extra_args=legacy_stdio_definitions.lib /MACHINE:X86 /WINMD:NO /RELEASE /NXCOMPAT /DYNAMICBASE /MACHINE:X86 /OPT:REF /OPT:I*FERRORREPORT:PROMPT /NOLOGO /TLBID:1 /SAFESEH:NO /subsystem:console,5.01 oldnames.lib 编译测试代码可见: extra_args 覆盖了后面的同名选项
补充内容 (2018-6-9 11:52):
|