常见问题¶
如何升级yocto和容器¶
oebuild升级yocto与容器很简单,只需要在oebuild工作目录下通过执行oebuild update命令即可,如果要升级yocto,则执行以下命令:
oebuild update yocto
如果要升级容器,请先确保主机系统安装了docker软件,并且给予了当前用户执行权限,然后执行以下命令:
oebuild update docker
如何定制docker启动选项¶
在oebuild编译目录下,一般会有compile.yaml编译文件,用vim或其他编辑器打开compile.yaml,在末尾可以看到如下配置信息:
docker_param:
image: swr.cn-north-4.myhuaweicloud.com/openeuler-embedded/openeuler-container:latest
parameters: -itd --network host
volumns:
- /dev/net/tun:/dev/net/tun
- /path/to/src:/usr1/openeuler/src
- /path/to/build/xxx:/home/openeuler/build/xxx
command: bash
其中image表示启动的容器镜像,parameters即为容器启动的选项参数,这里默认为”-itd –network host”,如果想要做其他定制,直接对该字段进行删改即可,volumns表示容器启动和主机的目录挂载映射,command表示容器启动后选用的命令解析器。
对compile.yaml修改完成后,请先执行`rm -f .env`命令,然后再启动`oebuild bitbake`命令,此时定制的容器启动参数才能生效,这是因为oebuild为了更加快速的响应启动环境,会复用已启用的容器,而.env文件则记录了正在使用的容器ID,如果对容器启动参数做了定制,则删除.env后,再次执行`oebuild bitbake`,oebuild会重新以当下compile.yaml的配置项来启动容器。