Fortran Coder

标题: VS2012/2013 + IVF 编译出的程序无法在 XP 运行的解决办法 [打印本页]

作者: 楚香饭    时间: 2014-2-27 13:30
标题: VS2012/2013 + IVF 编译出的程序无法在 XP 运行的解决办法
近日发现Visual Studio 2013 或 2012上,使用 Intel Visual Fortran 编译出的可执行文件(如exe)等,无法在 XP 上运行。

会提示类似这种错误:


原因大概就是微软希望用户都放弃使用 XP,用心良苦,呵呵。

但中国国情如此,还是有不少朋友在用XP的,网上找了很多解决方案,都是针对 C++ 工程的,有一个关于 Platform 的开关设置。但是 Intel Fortran 工程里没有这个设置,找了一圈也找不到相似的。

比较官方正式的解决方法是:
第一步:打开工程属性,在 Linker 选项,System 子项, Subsystem 项目,如有 for Windows XP 的选项,选择之。如没有,则修改为 NotSet,并进行第二步。

(如果你不知道什么是 Conosle,什么是 Windows,那么选 Console for Windows XP)



如果你的编译器里没有 Console for Windows XP 的选项,那么选择 NotSet,并进行第二步。

第二步:如果第一步,你选择的是 NotSet,那么在 Linker 选项,Command Line 下,添加以下开关:
Console 工程: /SUBSYSTEM:CONSOLE,"5.01"
QuickWin / Windows 工程:/SUBSYSTEM:WINDOWS,"5.01"


第三步:重新编译链接你的工程。


作者: aliouying    时间: 2014-3-2 11:28
很有用~  尤其是跨平台的时候
作者: fcode    时间: 2014-3-10 22:31
已更新比较正式,比较官方的解决方案。
作者: 深流水静水流深    时间: 2016-4-16 09:18
提示: 该帖被管理员或版主屏蔽




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2