1.介绍
MT8516 Linux BSP是二进制文件、源代码和SDK的集合,它支持用户开发Linux应用程序和为MT8516平台构建引导程序、TEE、Linux内核和根文件系统的映像。
2.Yocto项目介绍
Yocto项目是一个面向嵌入式Linux开发的开源协作项目。嵌入式开发人员可以使用Yocto项目开发完整的linux映像和用户空间应用程序。适用于多种硬件架构,包括ARM、MIPS、PowerPC、x86和x86-64.
要使YoctoProject工具在Linux主机上正常工作,必须安装以下软件包和实用程序
MTK使用Ubuntu14.04 64位(LTS)作为构建映像的标准环境。支持Ubuntu发行版作为主机开发系统所需的包显示在以下命令:
1)开放Ubuntu终端
按空区域中的CTRL ALT T,如图1所示,并显示图1-1。
2)在Ubuntu终端运行cmd
sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev xterm g++ libstdc++6 lib32stdc++6 libpulse-dev libevent-dev ninja-build rpm2cpio
sudo chmod 777 gn
Put the gn in build server /usr/bin/
If your Ubuntu use default dash shell, please install bash shell to build image.
2.1Setting Up the Repo Utility
REPO是一种帮助用户更容易地管理多个git存储库的工具。
Repo工具在管理YoctoProjectBSP项目时非常有用,因为它有多个层(目录)。
若要设置回购实用程序,请在ubuntu终端中执行以下步骤:
$ mkdir ~/bin
$ vim.tiny ~/.bashrc or vim.tiny ~/.bashprofile
add PATH=~/bin:$PATH to .bashrc or bashprofile file
$ source ~/.bashrc or source ~/.bashprofile
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
$ echo $PATH to check environment path
2.1.1 Yocto项目设置
要下载MediaTek Yocto项目配方层,请执行以下步骤:
1. Edit ~/.netrc
a)如果.netrc文件不存在,请创建一个新文件.netrc
$ mkdir ~/.netrc and vim .netrc
b)在~/.netrc文件末尾添加凭据
machine git01.mediatek.com login
Note: mediatek will provide
c)将PWD文件更改为只允许所有者读/写
$ chmod 600 ~/.netr
2.配置git环境
如果您第一次使用git,请配置git计数信息。
$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]
$ git config --list to check the git infomation
3. Sync Codebas
a)创建工作文件夹
$ mkdir mt8516-p1v2
b)代码基初始化
$ cd mt8516-p1v2
$ repo init -u http://git01.mediatek.com/yocto-aud-basic/manifest -b audio-release-sdk.mt8516-basic --no-repo-verify
c)从Git服务器到工作文件夹的同步代码
$ repo sync -j8
完成上述步骤后,将将源代码签入您的工作文件夹“MT85 16-P1V2”。
您可以执行回购同步“repo同步-j8”以更新到最新的代码。如果在repo init过程中出现错误,可以尝试删除.repo目录并再次运行repo init命令。
2.2代码布局
MT8516 Yocto Linux BSP具有以下子目录(或层),其中包含描述构建图像和SDK的过程的配置文件和配方集:
2.3创建图像
Yocto项目使用bitbake创建图像。Bitbake是一个工具,它负责解析配置文件和食谱,生成任务列表,然后执行这些任务。
1.使用下面的命令设置mt 8516平台的构建环境
$ cd mt8516-p1v2
$ export TEMPLATECONF=${PWD}/meta/base/conf/mt8516/aud8516p1v2-consys-slc
$ source meta/poky/oe-init-build-env
注意:当您运行上面的“Source”命令时,将创建一个“Build”目录,您应该在其中运行bitbake命令。
2.使用下面的bitbake命令生成图像
1.全构建
$ bitbake mtk-image-aud-8516 2>&1 | tee build.log
2.部分构建
Kernel
$ source meta/poky/oe-init-build-env
$ bitbake virtual/kernel -c cleanall && bitbake virtual/kernel –f
Appmainprog
$ source meta/poky/oe-init-build-env
$ bitbake appmainprog -c cleanall && bitbake appmainprog