YOCTO编译环境的搭建

一、YOCTO编译环境的搭建

参照《freescale_imx6_yocto.pdf》文档P14-P16页构建yocto编译环境。同时可参考https://linux.cn/article-8268-1.html?amputm_medium=rss。

具体操作步骤如下(有些命令需要su权限,视具体情况而定):

以下操作基于ubuntu 16.04 64bit系统,预留至少120G硬盘空间,推荐2G内存。

1、apt-get update

2、apt-get install wget git-core unzip make gcc g++ build-essentialsubversion sed autoconf automake texi2html texinfo coreutils diffstatpython-pysqlite2 docbook-utils libsdl1.2-dev libxml-parser-perl libgl1-mesa-devlibglu1-mesa-dev xsltproc desktop-file-utils chrpath groff libtool xterm gawkfop

3、copy poky 的 morty 稳定分支:

git clone -b mortygit://git.yoctoproject.org/poky.git

4、进入poky目录,然后运行下面的命令为 Yocto 开发环境设置(设置/导出)一些环境变量:

source oe-init-build-env

5、若正常,则如下图所示,会自动进入build目录:

6、修改build/conf/local.conf文件,如提供的local.conf文件所示。

7、编译:

bitbake core-image-minimal

一般要编译几个小时,电脑配置不高时,有可能要编译一天。

8、编译完成后,

runqemu qemux86-64为运行新的基于 Yocto 的 Linux 发行版的 qemu 打开一个新屏幕,则表示安装完成。

二、YOCTO BSP编译:

参考http://blog.csdn.net/wince_lover/article/details/51456745来编译yocto的BSP。具体步骤如下:

1、  下载repo:

mkdir ~/bin (this step may not be needed if the bin folderalready exists)
curlhttp://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

2、设置搜索路径:

export PATH=~/bin:$PATH

3、设置用户名和邮箱

gitconfig --global user.name "Your Name"

gitconfig --global user.email "Your Email"

gitconfig –list

4、获取linux BSP:

mkdir fsl-release-bsp

cd fsl-release-bsp

repo init -ugit://git.freescale.com/imx/fsl-arm-yocto-bsp.git -b imx-3.14.52-1.1.0_ga

repo sync

说明:

reposync 将会是一个漫长的等待过程,中间可能会出错。如果出错了就重新repo sync,直到成功为止。另外有的时候可能会很长时间不动了,看下载的流量也一直是0,也可以ctrl+C终止,然后重新repo sync。

注意在yocto下,我们下载BSP实际上只是一些配置文件,实际编译的时候边编译边下载的,所以在我们下载的BSP里面是找不到代码的。

5、编译BSP前的准备工作:

格式:

DISTRO=<distro name>MACHINE=<machine name> source fsl-setup-release.sh -b <build dir>

distro name有下面4个值

fsl-imx-x11       说明只支持X11 graphics

fsl-imx-wayland   说明只支持Wayland weston graphics

fsl-imx-xwayland  说明支持 Wayland graphics 和 X11.

fsl-imx-fb        说明只支持Frame Buffer graphics 不支持   X11 和 Wayland

machine name 对应我们的开发板的类型,有下面的值

imx6qpsabreauto 、 imx6qpsabresd、 imx6ulevk 、imx6dlsabreauto

imx6dlsabresd  、  imx6qsabreauto 、 imx6qsabresd 、 imx6slevk 、 imx6solosabreauto

imx6solosabresd 、 imx6sxsabresd 、 imx6sxsabreauto 、 imx7dsabresd

build dir 是编译的目录,我们可以任意指定一个目录名,编译的时候将在当前目录下新建这个目录。

例如我是这样设置的

MACHINE=imx6qsabresd DISTRO=fsl-imx-x11 source ./fsl-setup-release.sh -bimx6q-x11

首次运行这个命令的时候会提示时候遵循EULA协议,我们选y就好了。

6、编译BSP:

设置好后开始编译。

我们用bitbake来编译的。

格式是 bitbake <project name>

project name有下面的选项

core-image-minimal  这个是构建一个能启动的最小的系统

core-image-base     这个是构建一个只有命令行的系统

core-image-sato     这个是一个支持X11图形界面的系统

fsl-image-machine-test 这个imx内核的只有命令行的系统

fsl-image-gui          这个是IMX内核的不支持qt的图形界面的系统

fsl-image-qt5          这个是支持qt5的图形界面的系统

例如我运行的命令是

bitbake fsl-image-qt5

7、

编译过程中,有可能会产生错误,产生错误的时候先尝试再次编译,如果还有相同的错误,再解决。

编译完成后,在fsl-release-bsp/imx6q-x11/tmp/deploy/images/imx6qsabresd目录下会产生uboot,zImage,rootfs等映象文件。

三、工具链的制作:

1、  GCC工具链安装包的制作:

bitbakemeta-toolchain

编译完成后,在imx6q-x11/tmp/deploy/sdk/目录下生成一个可执行的sh文件。在别的PC上安装即可。

2、  QT工具链安装包的制作:

bitbakemeta-toolchain-qt5

注意事项:

1、使用ubuntu 16.04 64bit,不要使用ubuntu12.04,避免出现一些无法解决的错误。

2、在编译过程中,有可能有些错误,一般在NXP论坛上都能找到解决方法,视具体问题而定。

原文地址:https://www.cnblogs.com/fire909090/p/10522089.html

时间: 2024-11-10 15:56:51

YOCTO编译环境的搭建的相关文章

在安卓手机上学习C语言 - 安卓手机C/C++编译环境的搭建 : 程序世界的创建

   在安卓手机上学习C语言           安卓手机C/C++编译环境的搭建 : 程序世界的创建 在电脑上运行的QQ,手机上的QQ都是程序, 这些通电就能用的神奇玩意, 如果我说它们都是程序员用一个一个英文字母,数字,奇奇怪怪的符号创造出来的,我想那些没有任何概念的朋友可能会感到惊讶. 是的, 在没有揭开程序世界的神秘面纱之前, 一切都是那么神奇. 实际上, 程序确实是用一个一个英文字母(或者说拼音字母...)来写出来的, 就和写小说一样写出来的. 但是并不是写完之后把写出来的内容保存到一

第一篇:《UNIX 网络编程 第二版》编译环境的搭建

第一步:搭建基本的编译环境 安装gcc, g++, bulid-essential等编译软件 第二步:下载本书示例源码包 第三步:解压下载到的包并放在用户主目录中 第四步:进入包内并执行以下命令 1 sudo chmod u+x configure 2 ./configure 第五步:进入包内lib子目录下执行make命令 第六步:进入包内libfree子目录下执行make命令 第七步:进入包内libgai子目录下执行make命令 第八步:执行以下命令,将前面生成的libunp.a库复制到/us

Windows10下WebAssembly C/C++编译环境的搭建与Hello World尝试

首先,不论是在Windows.Linux还是Mac上,Webassembly的编译都是主要依赖于Emscripten SDK这个工具的.但是,在这里必须要吐槽一下,不论是WebAssembly官网.WebAssembly中文网还是Emscriptem官网安装文档上给出的安装方式基本都是这样的(中文网主要是Windows上的安装,更简单一些): 1.准备好git,cmake(这个好像可以没有).python2.7这三样 2.使用git从GitHub上clone下来一个48k的emsdk工程到本地.

Windows下QT4.8.4编译环境的搭建(转载http://blog.csdn.net/bestgonghuibin/article/details/38933141)

开始使用QT了,所以第一步就是把环境搭起来,这里小记一下,以免以后忘记. 1. 下载安装文件 要使用QT功能,那么必须要下载QT的源码,还必须要一个是用QT的编译环境,可以是VS2010,也可以是专用于QT编程的QT Creator.本人选择QT Creator,所以也必须要下载QT Creator. 根据网上大部分教程及自己买的书籍获取的信息,在选择版本的时候,QT 源码选择4.8.4,而QT Creator选择2.8.0(QT5.0以后许多原有的文件路径改变). 选择好版本之后,可以上QT的

Win7下qt5.3.1+opencv2.4.9编译环境的搭建(好多 Opencv2.4.9源码分析的博客)

到官网下载qt-opensource-windows-x86-mingw482_opengl-5.3.1.exe文件,执行该文件,选择默认安装即可实现QT的安装(安装在C盘的根目录下),该文件封装好了Qt libraries.Qt Creator,其中Qt Creator为3.1.2版本. 到官网http://opencv.org/downloads.html下载OpenCV for Windows2.4.9版本——opencv-2.4.9.exe.执行该文件,把它解压到适当的目录下即可,我是把

TypeScript01 编译环境的搭建、字符串特性、类型特性

知识准备:JavaScript满足ES5前端规范.TypeScript满足ES6前端规范 1 TypeScript开发环境 TypeScript代码不能直接被浏览器识别,必须先转换成JS代码:通常是利用编译器来讲TS代码转换成JS代码 1.1 使用在线的编辑器 1.1.1 利用TypeScript官网提供的编译器 TypeScript官网地址:点击前往 TypeScript官网提供的在线编译器:点击前往 1.1.2 利用Babel官网提供的编译器 Babel官网地址:点击前往 Babel官网提供

qt5.3.1+opencv2.4.9编译环境的搭建

到官网下载qt-opensource-windows-x86-mingw482_opengl-5.3.1.exe文件,执行该文件,选择默认安装即可实现QT的安装(安装在C盘的根目录下),该文件封装好了Qt libraries.Qt Creator,其中Qt Creator为3.1.2版本. 到官网http://opencv.org/downloads.html下载OpenCV for Windows2.4.9版本--opencv-2.4.9.exe.执行该文件,把它解压到适当的目录下即可,我是把

PHP扩展开发编译环境的搭建

PHP允许使用扩展的方式,直接使用C语言开发PHP的功能,由于编译的问题,很多底层和框架的基础工作如果用PHP必然会带来额外的开销,降低系统的吞吐量,必然yaf就是这样的思路,把框架封装在扩展里,让系统开销降低到最小,基本接近不用框架的性能水平. 首先是获取PHP的源代码,这里提供一个PHP源码的下载地址,目前最新的是PHP7.1,不够考虑到我一直在用的环境,这里选择PHP 5.4.31为例. 第二是在Windows平台下的PHP编译部署.在Windows下需要用到Visual Studio,P

C编译环境的搭建-sublime篇

1.安装sublime text 2.下载MingW: http://sourceforge.net/projects/mingw-w64/?source=typ_redirect 3.sublime中:preferences->browse packages->c++/c++.sublime-build文件修改为: { "cmd": ["g++", "${file}", "-o", "${file_pa