开发过程中的学习
一、硬件支持开启(替换文件)
python build.py wifiiot是存在一个小问题
No option ‘riscv32-unknown-elf-gcc_path’ in section: 'ndk’ ”
而在E:\鸿蒙资料\鸿蒙Linux镜像\ubuntu-20.04.1-desktop-amd64镜像中通过vscode使用编译命令 python build.py wifiiot 是可以正常使用的,主要区别是因为搭建环境存在一些差异具体原因尚不明确
二、BUILD.gn文件编写
BUILD.gn
include_dirs = [
"//utils/native/lite/include",
"//kernel/liteos_m/components/cmsis/2.0",
"//base/iot_hardware/interfaces/kits/wifiiot_lite",
]
--------------------------------------------------------------
lite_component("app") {
features = [
"1.0_Hello_World:hello_world",
//.gn文件的注释符号为 #
//include路径搞清楚资源路径
//写完路径后不可以漏 “ , ”
1.导入外部库(导入资源文件)
下面是当我们导入其他.c .h文件时相应对build文件做出相应的更改才可以正常调用,这点和我们在使用Keil5时有一定的差异
2.常见添加库的ERROR
用上述导入方式和更改build文件的include和source就可以减少一系列的问题,还有就是名称不可以错,哪怕是自己多写了一个空格也不可以
三、编写代码易错点:
- .gn文件的注释符号为 #
- include路径搞清楚资源路径
- 写完路径后不可以漏 “ , ”
- void Hello_World(void) ,()内的void不能缺
- C语言开发是面向过程,不能把顺序搞错,不然无法调用相应的函数(解决方法:在代码中提前声明)
- 在编写时,app文件夹下,每个文件夹有属于管理自己的Buid.gn文件
- 每层嵌套都有自己的Build.gn嵌套 最外层管理里面的层
- sources是每层所用的的资源文件而include_dir是我们所用引用同文件所在的路径,为编译器指明方向
include_dirs = [
"//utils/native/lite/include",
"//base/iot_hardware/interfaces/kits/wifiiot_lite",
]
四、常用库路径
- 路径 //utils/native/lite/include 包含的库
-
路径//base/iot_hardware/interfaces/kits/wifiiot_lite 包含的库
-
路径 //kernel/liteos_m/components/cmsis/2.0 包含的库
-
路径foundation/communication/interfaces/kits/wifi_lite/wifiservice包含的库
-
路径vendor/hisi/hi3861/hi3861/third_party/lwip_sack/include包含的库很多