---
title: 添加编译文件
description: "FlexDA 编程框架为用户提供了一系列架构头文件，用户在使用Hydra语言进行OVS开发编程时，需将架构头文件放在对应目录下，并在业务代码中通过#include包含需要的头文件。"
url: https://www.hikunpeng.com/document/detail/zh/flexda/devguide/dpak_dev0060.html
sourcePath: /source/zh/flexda/devguide/dpak_dev0060.html
indexId: aa24b94b638eb2bf0a3a65f474d02a31813ceae357b77a88153d5f18a762500744
---
# 添加编译文件

FlexDA 编程框架为用户提供了一系列架构头文件，用户在使用Hydra语言进行OVS开发编程时，需将架构头文件放在对应目录下，并在业务代码中通过#include包含需要的头文件。


**表1 架构头文件**

| 头文件 | 说明 |
| --- | --- |
| hydra\_core.hdr | 核心库，包含大多数程序需要用到的一些声明。例如常见type和常量的定义，match\_kind枚举，用于报文解析的packet\_in等。 |
| hydra\_model.hdr | 提供基于 FlexDA 架构的parser、control可编程块的定义，以及根据报文方向，提供三个package组装可编程块，用户需根据需要实例化对应的package。 |
| hydra\_headers.hdr | 提供常见报文协议的声明，如Ethernet、IPv4、IPv6等。 |
| hydra\_parser.hdr | 提供默认硬件报文解析器支持的报文结构定义，以及对应的parser实现，用户可使用预提供的parser实现硬件报文解析，简化编程，提高效率。 |
| hydra\_externs.hdr | 提供一系列extern函数供用户使用，包括报文编辑、checksum计算等。 |
| hydra\_builtin.hdr | 提供一系列header结构体声明及action声明，以支持 DPDK 默认key和action，以及框架提供的内置action。 |
| log.hdr | 提供日志接口声明， DSL 中日志仅可用于state、apply及action中。使用方法可查看开放头文件使用示例。 |


架构头文件为只读，用户不可修改文件内容。
