同步操作将从 OpenHarmony-SIG/device_soc_allwinner 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
OpenHarmony的代码托管在gitee,下载代码前必须在gitee注册账号并设置好公钥(点击学习设置公钥),否则会下载出错。
编译环境设置请参考OpenHarmony官网教程(点击跳转)。
创建repo安装目录。
mkdir ~/bin
下载repo。
wget https://storage.googleapis.com/git-repo-downloads/repo -P ~/bin/
改变执行权限。
chmod a+x ~/bin/repo
设置环境变量,在~/.bashrc文件的最后输入。
export PATH=~/bin:$PATH和export REPO_URL=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
重启shell。
XR806_OpenHarmony开发板适配了OpenHarmony_1.0.1_release分支,以下步骤1,步骤2,步骤3选择其中一步进行。
下载指定分支的OpenHarmony,以OpenHarmony_1.0.1_release为例。
repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify
下载指定标签的OpenHarmony,以OpenHarmony-v1.1.2-LTS(基于OpenHarmony_1.0.1_release)为例。
repo init -u https://gitee.com/openharmony/manifest.git -b refs/tags/OpenHarmony-v1.1.2-LTS --no-repo-verify
下载好仓库后,输入命令下载代码。
repo sync -c
下载好代码后,继续下载剩余的大容量二进制文件。
repo forall -c 'git lfs pull'
device仓目录
device/xradio/xr806
├── adapter # OpenHarmony接口适配
├── BUILD.gn # GN构建脚本
├── build.sh # 启动编译脚本
├── doc # 指导文档
├── libcopy.py # SDK编译脚本
├── liteos_m # 编译工具,编译选项定义
├── os # liteos接口适配
├── target_config.h # liteos系统裁剪
└── xr_skylark # SDK平台相关文件(内核驱动)
vendor仓目录
vendor/xradio
├── LICENSE
├── README.md
└── xr806
编译链工具推荐gcc-arm-none-eabi-10-2020-q4-major。(下载网站:https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads)
修改device/xradio/xr806/liteos_m/config.gni中的board_toolchain_prefix为实际环境下的gcc路径,以存放在tools文件夹下为例。
board_toolchain_prefix = "~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-"
修改device/xradio/xr806/xr_skylark/gcc.mk中的CC_DIR为实际环境下的gcc路径,以存放在tools文件夹下为例。
CC_DIR := ~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin
进入SDK目录。
cd device/xradio/xr806/xr_skylark/
复制配置文件。
cp project/demo/audio_demo/gcc/defconfig .config
使用图形化界面确认配置。
make menuconfig
执行make menuconfig后,按方向键选择save保存后,选择exist退出即可。
清除过程文件。
make build_clean
生成静态库已经自动生成头文件。
make lib -j
返回根目录编译工程。
返回根目录。
cd -
选择厂商。
hb set #回车,并选择wifi_skylark
编译系统,后续文件修改不需要重复配置。
hb build -f
执行make menuconfig时,提示ncurses.h:no such file or directory。
在Ubuntu下,安装上ncurses库即可。
apt-get install libncurses5-dev
如果不是在Ubuntu环境下,可以下载安装ncurses-devel rpm包也可以解决问题。
rpm -ivh ncurses-devel-5.5-24.20060715.i386.rpm
执行hb build -f后,没有语法错误,但是提示Generate image file failed(生成镜像失败)。
这是因为编译后生成的文件过大,旧的flash策略不能用,把device\xradio\xr806\xr_skylark\project\demo\wlan_ble_demo\image\xr806目录下的image_auto_cal.cfg里面的内容覆盖掉image_wlan_ble.cfg里面的内容即可。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。