一、环境配置
官方链接:
环境配置
1.安装必要的库和软件
sudo apt-get install build-essential gcc g++ make zlib* libffi-dev e2fsprogs pkg-config flex bison perl bc openssl libssl-dev libelf-dev libc6-dev-amd64 binutils binutils-dev libdwarf-dev u-boot-tools mtd-utils gcc-arm-linux-gnueabi cpio device-tree-compiler
2.安装python3
1.查看python版本号
python3 --version
2.安装python3.8
如果低于python3.7版本,不建议直接升级,请按照如下步骤重新安装。以python3.8为例,按照以下步骤安装python。
我的ubuntu版本是18.04 ,执行下面命令
sudo apt-get install python3.8
3.设置python和python3软链接为python3.8
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1
4.安装并升级Python包管理工具(pip3)
我这里选择命令行的方式进行安装。
sudo apt-get install python3-setuptools python3-pip -y
sudo pip3 install --upgrade pip
3.安装hb
运行如下命令安装hb
python3 -m pip install --user ohos-build
设置环境变量
vim ~/.bashrc
将以下命令拷贝到.bashrc文件的最后一行,保存并退出。
export PATH=~/.local/bin:$PATH
执行如下命令更新环境变量。
source ~/.bashrc
执行"hb -h",有打印以下信息即表示安装成功:
`usage: hb
OHOS build system
positional arguments:
{build,set,env,clean}
build Build source code
set OHOS build settings
env Show OHOS build env
clean Clean output
optional arguments:
-h, --help show this help message and exit`
可以输入hb -v查看hb的版本号
二、Gcc编译链安装
1.下载arm toolchain
在openharmony下面创建一个tool文件夹
然后执行
wget -c https://developer.arm.com/-/media/Files/downloads/gnu-rm/10-2020q4/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
下载会有一点慢(稍微等待一下)
下载完成。
用ls命令查看
解压
tar -vxf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
2.配置
创建 ~/tools 目录
mkdir ~/tools
将解压的文件夹拷贝到~/tools文件夹下
cp gcc-arm-none-eabi-10-2020-q4-major ~/tools/ -r
注:~表示你的/home/用户名目录
我这里是/home/luatao
复制好之后可前往查看
三、下载源码
1.repo工具
1.下载repo工具
如果没有repo工具,可通过下面的git命令获取repo。
git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo
2.修改repo镜像地址
当直接执行repo init时候,系统会提示连接超时。
因为Repo init 默认会访问的url地址https://gerrit.googlesource.com/git-repo往往会失败;
所以我们需要替换为国内的地址
依次执行下面的命令
vim ~/.bashrc export PATH=~/bin:$PATH export REPO_URL=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
2.获取鸿蒙系统源码
在ubuntu上下载
创建一个文件夹openharmony,好管理
执行
repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify
然后再执行
repo sync -c
repo forall -c 'git lfs pull'
3.下载X806源码
1.放到device文件夹下
git clone https://gitee.com/openharmony-sig/devboard_device_allwinner_xr806.git
上面这个链接已经被废除了。
执行会报错
git clone https://gitee.com/moldy-potato-chips/devboard_device_allwinner_xr806
2.放到vendor文件夹下
git clone https://gitee.com/openharmony-sig/devboard_vendor_allwinner_xr806.git
上面这个链接已经被废除了。
git clone https://gitee.com/moldy-potato-chips/devboard_vendor_allwinner_xr806
3.修改文件夹名称
进入device文件夹下,执行
mv devboard_device_allwinner_xr806/ xradio
进入vendor文件夹下,执行
mv devboard_vendor_allwinner_xr806 xradio
四、对代码工程进行配置
cd device/xradio/xr806/xr_skylark
进入到xr_skylark目录(原生SDK目录)
1.复制配置文件
cp project/demo/audio_demo/gcc/defconfig .config
2.图形化界面配置
make menuconfig
这里先不进行配置 ,双击esc,选择no退出
3.清除旧配置
make build_clean
4.根据配置生成静态库和全局头文件
make lib -j
5.选择wifi_skylark
返回openharmony根目录
cd -
选择wifi_skylark
hb set
此时再按下一回车,出现
此时选择wifi_shylark,再按下一回车。
五.编译,后续不需要重新配置
1.编译
hb build -f
从上面可以看出编译成功。
2.镜像文件
生成的镜像文件在 源码目录//device/xradio/xr806/xr_skylark/out
在我这里就是
/home/luatao/luatao/openharmony/xr806_openharmony/device/xradio/xr806/xr_skylark/out
六、固件烧录
1.拷贝烧录软件和烧录镜像
编译生成的固件在device/xradio/xr806/xr_skylark/out,名称为xr_system.img。
XR806的烧录固件为phoenixMC_xxxx.exe,文件位于device/xradio/xr806/xr_skylark/tools。
我们可以进入看一下,就是箭头指向的这个文件。
我们可以通过winsp将这个文件拷贝到windows上(注意这里不要只单独拷贝这个文件,需要将tool文件夹一起拷贝过来,因为需要一些dll文件)
然后我们双击打开
2.烧录步骤
1.上电
插上我们的板子(需要安装cp2102驱动,自行百度)
然后点击刷新一下,会多出来一个串口,勾上。
2.修改波特率
修改烧录速率,从921600修改为3000000。
3.选择固件
点击“选择固件”,选择xr_system.img(需要我们从ubuntu中拷贝出来)。
4.设置
点击“设置”,勾选“硬件复位烧写模式”
5.升级固件
设置完成后界面如下图所示,点击“升级固件”,等下方的进度条完成即可。
七、终端打印
找一个终端工具,选择串口连接,波特率设置为115200.
按下复位键,打印下面的信息,即烧录成功。