1 Create a Tizen Common x86_64 image with Yocto
2 =============================================
6 # Create your working directory
8 Create a working directory (for example "~/yocto"):
13 Create a download directory (optional). It will act as a common download
14 directory amongst projects:
22 git clone git://git.yoctoproject.org/poky
24 Download Intel layers:
26 git clone git://git.yoctoproject.org/meta-intel
28 Download openembedded layers:
30 git clone git://git.openembedded.org/meta-openembedded
34 git@github.com:eurogiciel-oss/meta-tizen.git
38 Configure the environment:
47 This file contains the list of the layers in which poky has to search
50 # LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
51 # changes incompatibly
58 /home/user/yocto/poky/meta \
59 /home/user/yocto/poky/meta-yocto \
60 /home/user/yocto/poky/meta-yocto-bsp \
61 /home/user/yocto/meta-intel \
62 /home/user/yocto/meta-intel/meta-isg/meta-haswell-wc \
63 /home/user/yocto/meta-openembedded/meta-efl \
64 /home/user/yocto/meta-openembedded/meta-oe \
65 /home/user/yocto/meta-openembedded/meta-multimedia \
66 /home/user/yocto/meta-openembedded/meta-ruby \
67 /home/user/yocto/meta-openembedded/meta-systemd \
68 /home/user/yocto/meta-tizen \
73 Most of default values can be kept. The one that needs to be changed is:
75 MACHINE ?= "qemux86-64:wq
78 Other useful option to set:
82 DL_DIR ?= "${HOME}/yocto/downloads"
84 Setting the download directory DL_DIR to a directory shared amongst
85 projects prevents common data from being downloaded for each project.
89 OE_TERMINAL = "screen"
91 The terminal emulator you want to use.
93 Example of a complete configuration file (without comments):
95 BB_NUMBER_THREADS ?= "${@oe.utils.cpu_count()}"
96 PARALLEL_MAKE ?= "-j ${@oe.utils.cpu_count()}"
97 MACHINE ?= "genericx86-64"
98 DL_DIR ?= "${HOME}/yocto/downloads"
99 BB_GENERATE_MIRROR_TARBALLS = "1"
101 PACKAGE_CLASSES ?= "package_rpm"
102 EXTRA_IMAGE_FEATURES = "debug-tweaks"
103 USER_CLASSES ?= "buildstats image-mklibs image-prelink"
104 OE_TERMINAL = "screen"
105 PATCHRESOLVE = "noop"
107 STOPTASKS,${TMPDIR},1G,100K \
108 STOPTASKS,${DL_DIR},1G,100K \
109 STOPTASKS,${SSTATE_DIR},1G,100K \
110 ABORT,${TMPDIR},100M,1K \
111 ABORT,${DL_DIR},100M,1K \
112 ABORT,${SSTATE_DIR},100M,1K"
113 PACKAGECONFIG_pn-qemu-native = "sdl"
114 ASSUME_PROVIDED += "libsdl-native"
117 1) Unfortunately we have to copy some files to the meta directory
125 This should be temporary and will be removed as soon as possible.
127 # cp classes/* ${POCKY_PATH}/meta/classes/
128 # cp lib/oe/* ${POCKY_PATH}/lib/oe/
130 # Build the Tizen Common image
132 bitbake tizen-common-core-image-minimal
134 Two useful options are:
136 'k' "Continue as much as possible after an error. While the target that
137 failed and anything depending on it cannot be built, as much as
138 possible will be built before stopping."
140 'v' "Output more log message data to the terminal."
143 1) bitbake -kv tizen-common-core-image-minimal
144 2) runqemu qemux86-64 tizen-common-core-image-minimal bootparams="S"
145 3) /etc/smack/init_attr
146 The generate image can be found in tmp/deploy/images/qemux86-64/