You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ifort中与gfortran的-static-lbgcc、-static-libgfortran等效的参数是什么?

ifort编译适配gfortran静态链接参数等效方案

参数等效对应规则

  • -static-libgfortran:该参数是GFortran专用的静态链接自身运行时库的配置,ifort不依赖libgfortran,直接删除即可,无需等效替换。ifort编译时会自动调用Intel自家的Fortran运行时库(libifcore系列),不需要关联GNU的Fortran运行时。
  • -static-libgcc:该参数是静态链接GCC的C运行时库的配置,在ifort下根据实际需求二选一即可:
    • 若需要全静态编译整个程序,直接使用-static参数,会自动静态链接所有Intel运行时库+系统C运行时依赖,完全覆盖原参数的功能
    • 若仅需要静态链接编译器自带的运行时、保留系统库的动态链接,使用-static-intel参数,仅静态链接Intel提供的libifcore、libimf、libirc等运行时组件,满足大部分静态发布的需求

CMakeLists适配示例

你可以在原配置中增加编译器判断分支,自动适配不同的编译环境:

if (CMAKE_Fortran_COMPILER_ID MATCHES "Intel")
    # 全静态编译可选配置
    set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -static")
    # 仅静态链接Intel运行时可选配置,和上面的全静态配置二选一即可
    # set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -static-intel")
elseif(CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
    set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -static-libgcc -static-libgfortran")
endif()

验证方法

编译完成后可在Linux环境下使用ldd 生成的可执行文件路径命令检查动态链接依赖,确认是否符合你的静态链接预期。

内容的提问来源于stack exchange,提问作者ghylander

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 15:45:03