在configure中查找底层编译器

时间:2010-07-13 14:35:13

标签: makefile mpi autoconf configure hdf5

我有一个使用编译器包装器编译的应用程序,例如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,我希望能够将编译器相关的参数添加到编译器中,但这需要在{{1}中包含代码找出configure.ach5fc/cc的底层编译器是什么。我想这一定是可能的,但我不知道该怎么做。有没有人有任何建议?

奖金问题:实际上在某些情况下我需要使用mpif90/cc进行编译,这是支持MPI的HDF5包装器:

h5pfc/cc

需要迭代搜索,因为我需要$ h5pfc -show mpif90 [...] -lsz -lz -lm ...

1 个答案:

答案 0 :(得分:1)

我终于明白了 - 答案就是:

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