C /FORTRAN项目由Visual Studio 2010/Intel 2013创建,将不会在Visual St



我继承了一个为Visual Studio 2010/Intel 2013上运行的Visual Studio项目,这是C 和Fortran项目的组合。我的任务是进行必要的修改,以便与Intel Fortran 2017一起使用Visual Studio 2015进行构建和运行。我已经以调试模式进行了所有编译,构建和运行,但是我无法将其构建在发行中模式。对于所有引用C .lib项目的Fortran项目,我会收到以下消息:

MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance   
fatal error C1905: Front end and back end not compatible (must target same processor).
LINK : fatal error LNK1257: code generation failed

我已经检查并仔细检查了配置,并为Win32平台构建了所有项目。

在线搜索,我读到这可能是由于对不同项目的优化设置不同。我已经玩过优化设置,该设置无助或导致图书馆冲突。我已经在线搜索以解决这些冲突,似乎找不到可以实现的直接解决方案。

该项目仍在Debug和发行模式下在Visual Studio 2010中建立和运行。我什至尝试使用Visual Studio 2010创建的.lib构建新的Fortran版本并获得相同的错误。

在新版本的Visual Studio和Intel Fortran中是否存在固有的不同?

错误c1905状态:

"前端和后端不兼容(必须针对同一处理器("

这是什么意思,为什么会发生?"当一个针对一个处理器的编译器前端(C1.DLL(生成.OBJ文件时,会发生此错误一个不同的处理器。"

"要解决此问题,请确保您使用匹配的前端和后端。这是Visual Studio中创建的项目的默认值。如果您已经编辑了项目文件并将不同的路径使用到编译器工具。如果您没有专门为编译器工具设置路径,则如果您的Visual Studio安装损坏了,可能会发生此错误。例如,您可能已将编译器.dll文件从一个位置复制到另一个位置。Windows控制面板中的功能以维修或重新安装Visual Studio。"

您说您正在尝试从2013年到2017年进行项目,这是为什么您不能在发行模式下构建和运行的原因很有意义,因为编译器工具很可能在不同的位置。

-msdn

最新更新