建立与waf的fortran图书馆,安装.mod文件

时间:2011-11-25 16:14:27

标签: module fortran waf

我使用waf(http://code.google.com/p/waf/)构建一个fortran库(也使用了一些c代码)。

相应的wscript看起来像这样:

 def build(bld):

    bld(
            features = 'fc',
            source   = 'fortran_interface.f90',
            target   = 'fortran_interface.o')
            #install_path = '${PREFIX}/mod')
    #bld.install_files('${PREFIX}/mod','fortran_interface.mod')

    bld(
            features = 'c',
            includes = '../../include',
            source   = 'init_wrapper.c',
            target   = 'init_wrapper.o')

    bld(
            features = 'fc fcstlib',
            use      = 'init_wrapper.o fortran_interface.o',
            target   = 'fortran_interface',
            install_path = '${PREFIX}/lib')

调用waf产生如下:

fc: src/fortran/fortran_interface.f90 -> 
    build/src/fortran/fortran_interface.f90.1.o 
    build/fortran_interface.mod

我希望能够将.mod文件安装到${PREFIX}/mod。 我尝试install_path在这种情况下没有效果,或者install_files不起作用,因为a)它没有看到build /目录和b)因为它在之前抱怨如果文件不存在.3

1 个答案:

答案 0 :(得分:3)

关于这个帖子(http://groups.google.com/group/waf-users/browse_thread/thread/c771a2f4fedd4e3?pli=1)答案是创建

  • 单独的构建组

    bld.add_group()

  • 并使用

    bld.srcnode.find_or_declare(<filename>.mod)

使waf查看.mod文件的构建目录。