加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Ubuntu > 正文

ubuntu 下 OE(Openembedded) 安装-bitbake

发布时间:2020-05-22 15:32:08 所属栏目:Ubuntu 来源:互联网
导读:ubuntu 下 OE(Openembedded) 安装-bitbake 1创建目录 $ mkdir -p /stuff/build/conf$ cd /stuff/ 2下载源码 wget http://download.berlios.de/bitbake/bitbake-1.10.2.tar.gz 3克隆工程 $ git clone git://github.com/openemb

ubuntu 下 OE(Openembedded) 安装-bitbake

1创建目录

$ mkdir -p /stuff/build/conf
$ cd /stuff/

2下载源码

 wget http://download.berlios.de/bitbake/bitbake-1.10.2.tar.gz

3克隆工程

$ git clone git://github.com/openembedded/openembedded.git

4更新
$ git pull --rebase

5创建目录

$ cd /stuff/
$ cp openembedded/conf/local.conf.sample build/conf/local.conf
$ vi build/conf/local.conf

6配置
BBFILES = "/stuff/openembedded/recipes/*/*.bb"
DISTRO = "angstrom-2010.x"
MACHINE = "beagleboard"
7环境变量设置
$ export BBPATH=/stuff/build:/stuff/openembedded
$ export PATH=/stuff/bitbake/bin:$PATH
8编译工具
$ bitbake nano

$ bitbake x11-image
这是已经能用的修改后的local.conf## OpenEmbedded local configuration file (sample)## Please visit the Wiki at http://openembedded.org/ for more info.### Be SURE to read this file in its entirety and the GettingStarted page on the# wiki before proceeding.## Once you have done that,remove the line at the end of this# file and build away.# # WARNING: lines starting with a space (' ') will result in parse failures.# Remove '# ' from commented lines to activate them.## NOTE: Do NOT use $HOME in your paths,BitBake does NOT expand ~ for you. If you# must have paths relative to your homedir use ${HOME} (note the {}'s there# you MUST have them for the variable expansion to be done by BitBake). Your# paths should all be absolute paths (They should all start with a / after# expansion. Stuff like starting with ${HOME} or ${TOPDIR} is ok).# Use this to specify where BitBake should place the downloaded sources intoDL_DIR = "/home/doppler/stuff/sources"# Delete the line below. Then specify which .bb files to consider for# your build. Typically this will be something like BBFILES = "/path/to/openembedded/recipes/*/*.bb"#BBFILES := "${@bb.fatal('Edit your conf/local.conf: BBFILES')}"BBFILES = "/home/doppler/stuff/openembedded/recipes/*/*.bb"# Use the BBMASK below to instruct BitBake to _NOT_ consider some .bb files# This is a regular expression,so be sure to get your parenthesis balanced.# BBMASK = "/(nonworking|obsolete)/"# Comment this if your host distribution does not provide the# help2man tool.ASSUME_PROVIDED += "help2man-native"# Uncomment this if your host distribution has recent enough Linux# Kernel header files. Utilities we use to generate certain types of# target filesystems need somewhat recent header files.# ASSUME_PROVIDED += "linux-libc-headers-native"# Uncomment this if you want to use a prebuilt toolchain. You will need to# provide packages for toolchain and additional libraries yourself. You also# have to set PATH in your environment to make sure BitBake finds additional binaries.# ASSUME_PROVIDED += "virtual/${TARGET_PREFIX}gcc virtual/libc"# Uncomment this if you are building Linux 2.4 Embedix kernels.# i.e. openzaurus-sa-2.4.18 and openzaurus-pxa-2.4.18 - and don't forget# to rename the binaries as instructed in the Wiki.# Most users do not need this anymore thankfully!# ASSUME_PROVIDED += "virtual/arm-linux-gcc-2.95"# Select between multiple alternative providers,if more than one is eligible.PREFERRED_PROVIDERS = "virtual/qte:qte virtual/libqpe:libqpe-opie"PREFERRED_PROVIDERS += " virtual/libsdl:libsdl-x11"PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-initial:gcc-cross-initial"PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc-intermediate:gcc-cross-intermediate"PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}gcc:gcc-cross"PREFERRED_PROVIDERS += " virtual/${TARGET_PREFIX}g++:gcc-cross"# Uncomment this to specify where BitBake should create its temporary files.# Note that a full build of everything in OpenEmbedded will take GigaBytes of hard# disk space,so make sure to free enough space. The default TMPDIR is# <build directory>/tmp# Don't use symlinks in in the path to avoid problemsTMPDIR = /home/doppler/stuff/tmp# Uncomment this to specify a machine to build for. See the conf directory# for machines currently known to OpenEmbedded. This will automatically take care# of TARGET_ARCH# MACHINE = "c7x0"MACHINE = "beagleboard"# Use this to specify the target architecture. Note that this is only# needed when building for a machine not known to OpenEmbedded. Better use# the MACHINE attribute (see above)# TARGET_ARCH = "arm"# Use this to specify the target operating system. The default is "linux",# for a normal linux system with glibc. Set this to "linux-uclibc" if you want# to build a uclibc based system.# Normally the DISTRO of your choosing will take care of this # TARGET_OS = "linux"# TARGET_OS = "linux-uclibc"# Uncomment this to select a distribution policy. See the conf directory# for distributions currently known to OpenEmbedded.# Although it no longer contain version number in the (file-)name# openzaurus-unstable is a so called "versioned" distro,i.e. they # explicitely select specific versions of various packages.# Stay away from unversioned distros unless you really know what you are doing# DISTRO = "angstrom-2008.1"DISTRO = "angstrom-2010.x"# Uncomment and modify the following lines if you wish to use an external# binary toolchain,in this case one built by CodeSourcery. The following# example is for ARM and we set TOOLCHAIN_VENDOR to "-none" as the CodeSourcery# ARM tools are arm-none-linux-gnueabi-$tool. Other arches need different# values here. Some arches may need to override TARGET_PREFIX (ia32).# This assumes that the tools are already in the users PATH.# TOOLCHAIN_VENDOR = "-none"# TOOLCHAIN_TYPE = "external"# TOOLCHAIN_BRAND = "csl"# TOOLCHAIN_PATH = "/path/to/installed/copy/of/CodeSourcery/Sourcery_G++_Lite"# This example is for the Angstrom ARM toolchain,that uses cross prefix of# arm-angstrom-linux-gnueabi-$tool. This assumes that the tools are already# in the users PATH.# TOOLCHAIN_VENDOR = "-angstrom"# TOOLCHAIN_TYPE = "external"# TOOLCHAIN_BRAND = "angstrom"# TOOLCHAIN_PATH = "/usr/local/angstrom/arm"# Uncomment this if you want to use linux-headers from the linux-libc-headers# recipe as opposed to those bundled with the external (csl/angstrom) toolchain# PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"# So far,angstrom.conf sets ENABLE_BINARY_LOCALE_GENERATION# to generate binary locale packages at build time using qemu-native and# thereby guarantee i18n support on all devices. If your build breaks on # qemu-native consider disabling ENABLE_BINARY_LOCALE_GENERATION (note that# this breaks i18n on devices with less than 128MB RAM) or installing# a working third-party qemu (e.g. provided by your distribution) and# adding qemu-native to ASSUME_PROVIDED. Caveat emptor,since third-party# qemus lack patches needed to work with various OE targets.# ENABLE_BINARY_LOCALE_GENERATION = "0"# ASSUME_PROVIDED += "qemu-native"# If ENABLE_BINARY_LOCALE_GENERATION is set to "1",you can limit locales# generated to the list provided by GLIBC_GENERATE_LOCALES. This is huge# time-savior for developmental builds. Format: list of locale.encoding pairs# with spaces as separators.# GLIBC_GENERATE_LOCALES = "en_US.UTF-8 en_GB.UTF-8 de_DE.UTF-8"# Uncomment this to select a particular major kernel version if the MACHINE setting# supports more than one major kernel version. Currently this is suported by the# following MACHINE types: poodle,tosa and simpad.# MACHINE_KERNEL_VERSION = "2.6"# Uncomment one of these to build packages during the build process.# This is done automatically if you set DISTRO (see above)# INHERIT = "package_ipk"# INHERIT = "package_tar"# Add the required image file system types below. Valid are # jffs2,tar(.gz|bz2),cpio(.gz),cramfs,ext2(.gz),ext3(.gz),ext4(.gz|.bz2),# squashfs,squashfs-lzmaIMAGE_FSTYPES = "jffs2 tar"# Uncomment this if you want to keep the temporary rootfs# directory,this can be useful during development.# (Note that this rootfs is NOT usuable as NFS export.)# IMAGE_KEEPROOTFS = "1"# Uncomment this to enable the use of ccache when building. Due to# the nature of our builds this is only helpful in cases when one# is rebuilding a recipe or set of recipes,repeatedly.# CCACHE = "${@bb.which(bb.data.getVar('PATH',d,1),'ccache') and 'ccache '}"# Uncomment this to disable the parse cache (not recommended).# CACHE = ""# Uncomment this if you want BitBake to emit debugging output# BBDEBUG = "yes"# Use DEBUG_BUILD to build packages with DEBUG_OPTIMIZATION instead of# FULL_OPTIMIZATION.## DEBUG_BUILD = "1"# If you want to have unstripped ready-to-debug binaries,set this to "no",# although for debugging you can use automatically produced -dbg packages.# If you need to have completely undebuggable builds,set this to "full",# by default gnu.debuglink section is left in the binaries after stripping,so# this might be useful if you want to have checksum-level binary consistency# across successive builds.# PACKAGE_STRIP = "no"# Uncomment these to build a package such that you can use gprof to profile it.# NOTE: This will only work with 'linux' targets,not# 'linux-uclibc',as uClibc doesn't provide the necessary# object files. Also,don't build glibc itself with these# flags,or it'll fail to build.## PROFILE_OPTIMIZATION = "-pg"# SELECTED_OPTIMIZATION = "${PROFILE_OPTIMIZATION}"# LDFLAGS =+ "-pg"# Uncomment this to enable parallel make.# This allows make to spawn mutliple processes to take advantage of multiple # processors. Useful on SMP machines. This may break some packages - we're# in the process of marking these so let us know if you find any.# PARALLEL_MAKE = "-j 4"# Uncomment to run multiple bitbake threads in parallel.# Bitbake can do multiple jobs in parallel: Its a good idea make use of # all available resources: e.g. to download sources while some other# piece of software is compiled.# BB_NUMBER_THREADS = "2"# Uncomment this if you want BitBake to emit the log if a build fails.BBINCLUDELOGS = "yes"# Uncomment this if you want to install shared libraries directly under their SONAME,# rather than installing as the full version and symlinking to the SONAME.# PACKAGE_SNAP_LIB_SYMLINKS = "1"# EDIT THIS FILE and then remove the line below before using!#REMOVE_THIS_LINE:="${@bb.fatal('Read the comments in your conf/local.conf')}"

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读