OpenHarmony开源社区
直播中

刘丽

7年用户 1235经验值
私信 关注
[问答]

openharmony3.0源码中头文件是怎样引用的?

我在code-3.0源码上编译oled例程时发现,build.gn中include头文件路径并不正确,但是能够编译成功,后来我干脆把include包含的头文件路径全删了,编译还是能够成功。
我又在code-1.0源码上尝试同样的操作,编译报错。
openharmony源码中头文件是怎样引用的,问啥在code-3.0中删除了build.gn中的头文件也能正常编译?

回帖(1)

番茄番茄

2022-4-22 11:25:38
搞清楚了,在code-3.0中由config.gni为开发板编译相关的配置,编译时会采用该配置文件中的参数编译所有OS组件,编译阶段系统全局可见。在config.gni中包含了很多头文件,常用的基本包含在内了,如下所示:

# Board related headfiles search path.

board_include_dirs = [

  "${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/include",

  "${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/include",

  "${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/system/include",

  "${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/config",

  "${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/config/nv",

  "${ohos_root_path}utils/native/lite/include",

  "${ohos_root_path}device/hisilicon/hispark_pegasus/hi3861_adapter/kal/cmsis",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/kernel/base/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/targets/hi3861v100/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/kernel/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/arch/risc-v/rv32im",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libm/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libsec/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/net/wpa_supplicant-2.7/src/common",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/targets/hi3861v100/plat/riscv",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/kernel/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/kernel/extended/runstop",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/posix/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/linux/include",

  "${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/third_party/lwip_sack/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libc/musl/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libc/musl/arch/generic",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libc/musl/arch/riscv32",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libc/hw/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libc/nuttx/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libsec/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/targets/hi3861v100/config",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/targets/hi3861v100/user",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/targets/hi3861v100/plat",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/targets/hi3861v100/extend/include",

  "${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/arch",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libc/bionic/libm",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/shell/include",

"${ohos_root_path}device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/net/telnet/include",

]
举报

更多回帖

发帖
×
20
完善资料,
赚取积分