美文网首页DPDK学习指南
DPDK编程指南(翻译)( 三十五)

DPDK编程指南(翻译)( 三十五)

作者: 半天妖 | 来源:发表于2017-11-22 09:49 被阅读154次

    35. 外部应用程序/库的 Makefile

    外部的应用程序或库必须包含RTE_SDK指定的位于mk目录中的Makefiles文件。 这些Makefiles包括:

    • ${RTE_SDK}/mk/rte.extapp.mk: 构建一个应用程序。
    • ${RTE_SDK}/mk/rte.extlib.mk: 构建一个静态库。
    • ${RTE_SDK}/mk/rte.extobj.mk: 购件一个目标文件。

    35.1. 前提

    必须定义以下变量:

    • ${RTE_SDK}: 指向DPDK根目录。
    • ${RTE_TARGET}: 指向用于编译的目标编译器(如x86_64-native-linuxapp-gcc)。

    35.2. 构建 Targets

    支持构建target时指定输出文件的目录,使用 O=mybuilddir 选项。 这是可选的,默认的输出目录是build。

    • all, “nothing” (仅make)
      编译应用程序或库到指定的输出目录中。
      例如:
      make O=mybuild
      
    • clean
      清除make操作产生的所有目标文件。
      例如:
      make clean O=mybuild
      

    35.3. Help Targets

    • help
      显示帮助信息。

    35.4. 其他有用的命令行变量

    以下变量可以在命令行中指定:

    • S=
      指定源文件的位置。默认情况下是当前目录。
    • M=
      指定需要被调用的Makefile。默认情况下使用 $(S)/Makefile。
    • V=
      使能详细编译(显示完全编译命令及一些中间命令过程)。
    • D=
      启用依赖关系调试。提供了一些有用的信息。
    • EXTRA_CFLAGS=, EXTRA_LDFLAGS=, EXTRA_ASFLAGS=, EXTRA_CPPFLAGS=
      添加的编译、连接或汇编标志。
    • CROSS=
      指定一个交叉工具链,该前缀将作为所有gcc/binutils应用程序的前缀。只有在gcc下才起作用。

    35.5. 从其他目录中编译

    通过指定输出和源目录,可以从另一个目录运行Makefile。
    例如:

    export RTE_SDK=/path/to/DPDK
    export RTE_TARGET=x86_64-native-linuxapp-icc
    make -f /path/to/my_app/Makefile S=/path/to/my_app O=/path/to/build_dir
    

    相关文章

      网友评论

        本文标题:DPDK编程指南(翻译)( 三十五)

        本文链接:https://www.haomeiwen.com/subject/cmcnvxtx.html