This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
library:rk3568:openharmony [2023/08/15 17:09] lhaosen [1. 安装依赖包] |
library:rk3568:openharmony [2023/08/15 17:57] (current) lhaosen [4. 源码编译] |
||
---|---|---|---|
Line 2: | Line 2: | ||
===== - 安装依赖包 ===== | ===== - 安装依赖包 ===== | ||
- | |||
- | |||
sudo apt-get update | sudo apt-get update | ||
- | sudo apt-get install binutils git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip ruby | + | sudo apt-get install binutils git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip ruby repo docker.io |
| | ||
- | 2.2.2. | + | ===== - 源码下载 |
- | 获取Firefly补丁脚本 | ||
- | mkdir openharmony | + | ==== 获取Firefly补丁脚本 ==== |
- | cd openharmony | + | |
- | wget https:// | + | cd openharmony |
- | chmod a+x sdk_init.sh | + | wget https:// |
+ | chmod a+x sdk_init.sh | ||
- | 选择编译开发板 | + | ==== 选择编译开发板 |
+ | cd openharmony | ||
+ | # 查找支持的设备 | ||
+ | ./ | ||
+ | # 选择指定开发板 | ||
+ | ./ | ||
+ | |||
+ | ==== 获取OpenHarmony官方源码 ==== | ||
- | cd openharmony | + | |
+ | repo init --repo-url=https:// | ||
+ | repo sync -c --no-tags | ||
+ | repo forall -c 'git lfs pull' | ||
- | # 查找支持的设备 | + | ==== 获取Firefly补丁源码 ==== |
- | ./ | + | |
- | # 选择指定开发板 | + | cd openharmony |
- | ./ | + | ./ |
- | 获取OpenHarmony官方源码 | + | ==== 更新代码 |
- | + | cd openharmony | |
- | cd openharmony | + | ./ |
- | repo init --repo-url=https:// | + | |
- | .repo/ | + | ===== - 获取docker |
- | .repo/ | + | |
- | + | ||
- | 获取Firefly补丁源码 | + | |
- | + | ||
- | cd openharmony | + | |
- | ./ | + | |
- | + | ||
- | 之后,更新代码运行如下命令: | + | |
- | + | ||
- | cd openharmony | + | |
- | ./ | + | |
- | + | ||
- | 2.2.3. | + | |
- | 获取Docker镜像 | ||
- | docker | + | ==== 设置docker权限(如必要) ==== |
+ | sudo groupadd docker | ||
+ | sudo gpasswd | ||
+ | newgrp | ||
- | 进入源码根目录,创建本地docker | ||
- | cd openharmony | + | ==== 获取Docker镜像 ==== |
- | docker | + | docker |
- | 以后直接运行如下命令进入docker | + | ==== 创建本地docker |
+ | cd openharmony | ||
+ | docker run --name openharmony -itd -v $(pwd):/ | ||
- | docker start openharmony | + | ==== 进入docker ==== |
- | docker exec -it openharmony /bin/bash | + | |
+ | docker exec -it openharmony /bin/bash | ||
- | 2.2.4. | + | ===== - 源码编译 |
进入docker进行编译 | 进入docker进行编译 | ||
- | # 必须进入docker | + | |
- | docker exec -it openharmony /bin/bash | + | docker exec -it openharmony /bin/bash |
- | # 第一次编译需要下载工具链,以后可以跳过 | + | # 下载工具链(首次编译必须) |
- | bash build/ | + | bash build/ |
- | ./build.sh --product-name rk3568 --ccache | + | # 编译 |
+ | | ||
编译完成之后,镜像在 out/ | 编译完成之后,镜像在 out/ | ||