Browse Source

修改编译操作,更换manifest仓库和加入thead_build目录。

lihm 3 years ago
parent
commit
4b5117312b
1 changed files with 42 additions and 7 deletions
  1. 42 7
      riscv yocto 仓库构建说明.md

+ 42 - 7
riscv yocto 仓库构建说明.md

@@ -8,12 +8,14 @@
 
    repo 建议使用清华源加速,安装设置参考:`https://mirrors.tuna.tsinghua.edu.cn/help/git-repo/`
 
-3. 软件仓库下载:
+3. Yocto 编译过程中需要下载软件进行编译、安装等,可以设置一个公共目录存放。当遇到下载速度慢的时候,可以使用手动下载,更改下载源等手段加速。
+
+4. 软件仓库下载:
 
    ```bash
    mkdir riscv_yocto
    cd riscv_yocto
-   repo init -u git@gitee.com:thead-yocto/meta-riscv.git  -b master -m tools/manifests/riscv-yocto.xml
+   repo init -u git@gitee.com:thead-yocto/manifests.git -m riscv-yocto.xml
    repo sync -c -d -j16
    ```
 
@@ -36,21 +38,54 @@
 
 
 
+## 安装编译环境
+
+1. 推荐使用 ubuntu18.04 或 ubuntu20.04 的环境进行编译。
+
+2. 安装依赖
+
+   > TODO
+
+3. 使用 docker 环境
+
+   > TODO
+
+
+
 ## 编译
 
-1. 编译
+1. 代码目录
 
    ```bash
-   source meta-riscv/setup.sh
+   riscv_yocto
+   ├── meta-external-toolchain
+   ├── meta-openembedded
+   ├── meta-riscv
+   ├── openembedded-core
+   └── thead-build
+       ├── ice-base           # 默认编译 MACHINE=ice 的镜像
+       └── qemuriscv64        # 默认编译 MACHINE=qemuriscv64 的镜像
+   ```
+
+2. 编译
+
+   ```bash
+   # 在 yocto 工程根目录 riscv_yocto/ 下执行:
+   source openembedded-core/oe-init-build-env thead-build/ice-base  # 将 build 目录指定为 thead-build/ice-base
    
    # 确认 downloads 文件夹:设置一个存放 yocto 下载文件的共享目录 SHARE_YOCTO_DOWNLOAD_FILE_FOLDER
    ln -s SHARE_YOCTO_DOWNLOAD_FILE_FOLDER/ downloads
    
-   # 编译:MACHINE 也可以在配置文件中设置为默认 ice
-   MACHINE=ice bitbake core-image-minimal
+   # 编译:thead-build/ice-base/conf/auto.conf 中默认设置为 MACHINE ?= "ice"
+   bitbake core-image-minimal
+   
+   # 如果要编译其他target MACHINE,可加入 MACHINE=xxx 进行指定
+   MACHINE=qemuriscv64 bitbake core-image-minimal
+   
+   # sstate-cache/ 会放在 thead-build/ 下,不同配置可以共享使用
    ```
 
-2. 输出
+3. 输出
 
    ```bash
    # 镜像文件