首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有什么宏可以区分ifort和其他fortran编译器?

有什么宏可以区分ifort和其他fortran编译器?
EN

Stack Overflow用户
提问于 2010-03-25 21:25:01
回答 2查看 2.7K关注 0票数 5

我正在使用Fortran代码,它必须使用各种Fortran编译器(并且与C++和Java代码交互)。目前,我们让它与gfortran和g95一起工作,但我正在研究如何使它与ifort一起工作,我遇到的第一个问题是如何在源代码中确定它是否使用ifort。

例如,我现在有一段代码:

代码语言:javascript
复制
#if defined(__GFORTRAN__)
// Macro to add name-mangling bits to fortran symbols. Currently for gfortran only
#define MODFUNCNAME(mod,fname) __ ## mod ## _MOD_ ## fname
#else
// Macro to add name-mangling bits to fortran symbols. Currently for g95 only
#define MODFUNCNAME(mod,fname) mod ## _MP_ ## fname
#endif // if __GFORTRAN__

艾福尔的宏是什么?我尝试了IFORT,但这是不对的,进一步的猜测似乎没有效果。我还试着用ifort -help和Google阅读手册页。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-03-25 21:33:28

您所追求的是__INTEL_COMPILER,如http://software.intel.com/sites/products/documentation/hpc/compilerpro/en-us/fortran/win/compiler_f/bldaps_for/common/bldaps_use_presym.htm中所定义的

票数 9
EN

Stack Overflow用户

发布于 2010-03-25 21:36:54

根据他们的文档,他们定义了__INTEL_COMPILER=910。910可能是一个版本号,但您可能只需对其进行#ifdef。

我应该注意,ifort不允许宏,除非您使用/fpp标志打开它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2519516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档