【问题标题】:Find underlying compiler in configure在configure中查找底层编译器
【发布时间】:2011-03-15 08:56:21
【问题描述】:

我有一个使用编译器包装器编译的应用程序,例如h5fc/h5cc(HDF5 编译器包装器)或mpif90/mpicc(MPI 编译器包装器)。这些只是包装器,可以使用-show 参数查看真正的底层编译器,例如

$ h5fc -show
ifort -fPIC [...] -lz -lm
$ mpif90 -show
ifort [...] -lmpichf90 -lmpichf90 -lpmpich -lmpich -lopa -lpthread

在这两种情况下,底层编译器都是 ifort。现在我正在使用configure.ac 生成一个配置脚本来设置Makefile,并且我希望能够向编译器添加依赖于编译器的参数,但这需要在configure.ac 中有代码来找出h5fc/ccmpif90/cc 的底层编译器是。我想这一定是可能的,但我不知道该怎么做。有人有什么建议吗?

额外问题:事实上在某些情况下我需要使用h5pfc/cc 进行编译,这是启用 MPI 的 HDF5 包装器:

$ h5pfc -show
mpif90 [...] -lsz -lz -lm

这需要迭代搜索,因为我需要这样做mpif90 -show...

【问题讨论】:

    标签: makefile mpi autoconf configure hdf5


    【解决方案1】:

    我终于想通了——答案很简单:

    fccompiler = `h5fc -show | awk {'print $1'}`
    AC_MSG_RESULT($fccompiler) # print out to check
    

    【讨论】:

      猜你喜欢
      • 2011-10-11
      • 1970-01-01
      • 1970-01-01
      • 2011-07-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-30
      • 1970-01-01
      相关资源
      最近更新 更多