m-tmatma / yocto-raspberry-pi

yocto for raspberry pi
0 stars 0 forks source link

raspberrypi ビルド方法 (ubuntu) #4

Open m-tmatma opened 5 years ago

m-tmatma commented 5 years ago

raspberrypi ビルド方法

sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev xterm

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

cd poky
git clone -b krogoth git://git.openembedded.org/meta-openembedded
git clone -b krogoth git://github.com/jumpnow/meta-rpi
git clone -b master  git://git.yoctoproject.org/meta-raspberrypi
git clone git://github.com/meta-qt5/meta-qt5.git

export DL_DIR=${HOME}/poky/downloads
export MACHINE=raspberrypi3
source oe-init-build-env build-rpi

bitbake-layers add-layer ../meta-openembedded/meta-oe
bitbake-layers add-layer ../meta-openembedded/meta-python
bitbake-layers add-layer ../meta-raspberrypi
bitbake-layers add-layer ../meta-openembedded/meta-efl
bitbake-layers add-layer ../meta-openembedded/meta-filesystems
bitbake-layers add-layer ../meta-openembedded/meta-gnome
bitbake-layers add-layer ../meta-openembedded/meta-gpe
bitbake-layers add-layer ../meta-openembedded/meta-initramfs
bitbake-layers add-layer ../meta-openembedded/meta-multimedia
bitbake-layers add-layer ../meta-openembedded/meta-networking
bitbake-layers add-layer ../meta-openembedded/meta-perl
bitbake-layers add-layer ../meta-openembedded/meta-ruby
bitbake-layers add-layer ../meta-openembedded/meta-systemd
bitbake-layers add-layer ../meta-openembedded/meta-webserver
bitbake-layers add-layer ../meta-openembedded/meta-xfce
bitbake-layers add-layer ../meta-yocto
bitbake-layers add-layer ../meta-qt5

bitbake-layers add-layer ../meta-rpi

bitbake core-image-sato
m-tmatma commented 5 years ago

raspberrypi3 meta-raspberrypiでuartコンソール

http://mickey-happygolucky.hatenablog.com/entry/2016/12/18/111911

次の行をlocal.confの先頭の方に追加する。

MACHINE ?= "raspberrypi3"
DL_DIR ?= "${HOME}/work/yocto/downloads"

ENABLE_UART = "1"
m-tmatma commented 5 years ago

meta-rpi/conf/bblayers.conf-sample

    ${HOME}/poky-krogoth/meta \
    ${HOME}/poky-krogoth/meta-poky \
    ${HOME}/poky-krogoth/meta-openembedded/meta-oe \
    ${HOME}/poky-krogoth/meta-openembedded/meta-multimedia \
    ${HOME}/poky-krogoth/meta-openembedded/meta-networking \
    ${HOME}/poky-krogoth/meta-openembedded/meta-python \
    ${HOME}/poky-krogoth/meta-qt5 \
    ${HOME}/poky-krogoth/meta-raspberrypi \
    ${HOME}/rpi/meta-rpi \
export DL_DIR=${HOME}/poky/downloads
export MACHINE=raspberrypi3
source oe-init-build-env build-rpi
tsuchiyama@ubuntu1804:~/poky/build-rpi$ bitbake-layers show-layers
layer                 path                                      priority
==========================================================================
meta                  /home/tsuchiyama/poky/meta                5
meta-poky             /home/tsuchiyama/poky/meta-poky           5
meta-yocto-bsp        /home/tsuchiyama/poky/meta-yocto-bsp      5
tsuchiyama@ubuntu1804:~/poky/build-rpi$ bitbake-layers show-layers
bitbake-layers remove-layer meta-yocto-bsp
    bitbake-layers add-layer ../meta-openembedded/meta-oe
    bitbake-layers add-layer ../meta-openembedded/meta-multimedia
    bitbake-layers add-layer ../meta-openembedded/meta-python
    bitbake-layers add-layer ../meta-openembedded/meta-networking
    bitbake-layers add-layer ../meta-qt5
    bitbake-layers add-layer ../meta-raspberrypi
bitbake meta-ide-support
m-tmatma commented 5 years ago
export DL_DIR=${HOME}/poky/downloads
export MACHINE=raspberrypi3
source oe-init-build-env build-rpi
bitbake-layers show-layers
bitbake-layers remove-layer meta-yocto-bsp
bitbake-layers add-layer ../meta-openembedded/meta-oe
bitbake-layers add-layer ../meta-openembedded/meta-multimedia
bitbake-layers add-layer ../meta-openembedded/meta-python
bitbake-layers add-layer ../meta-openembedded/meta-networking
bitbake-layers add-layer ../meta-qt5
bitbake-layers add-layer ../meta-raspberrypi
bitbake-layers add-layer ../meta-rpi

ln -s ../downloads .
bitbake console-image

以下でもいいかも

ln -s ${DL_DIR}

https://github.com/jumpnow/meta-rpi/tree/thud/images

m-tmatma commented 5 years ago

git clone https://github.com/jumpnow/meta-rpi.git

m-tmatma commented 5 years ago

https://github.com/agherzan/meta-raspberrypi

m-tmatma commented 5 years ago

https://media.readthedocs.org/pdf/meta-raspberrypi/latest/meta-raspberrypi.pdf https://git.yoctoproject.org/cgit/cgit.cgi/meta-raspberrypi/tree/docs/layer-contents.md

2.1 Supported Machines

Note: The raspberrypi3 machines include support for Raspberry Pi 3B+

m-tmatma commented 5 years ago

https://git.yoctoproject.org/cgit/cgit.cgi/meta-raspberrypi/about/

m-tmatma commented 5 years ago

yocto Releases https://wiki.yoctoproject.org/wiki/Releases

m-tmatma commented 5 years ago
git clone  -b sumo  git://git.yoctoproject.org/poky

cd poky
git clone  -b sumo  git://git.openembedded.org/meta-openembedded
git clone  -b sumo  git://git.yoctoproject.org/meta-raspberrypi
git clone  -b sumo  git://github.com/meta-qt5/meta-qt5.git
git clone  -b sumo  https://github.com/jumpnow/meta-rpi.git

export DL_DIR=${HOME}/downloads
export MACHINE=raspberrypi3
source oe-init-build-env build-rpi

rm -rf downloads
ln -sf ${DL_DIR}

bitbake-layers show-layers

bitbake-layers remove-layer meta-yocto-bsp

以下を実行すると MACHINE=raspberrypi3 is invalid. Please set a valid MACHINE in your local.conf, environment or other configuration file. のエラーが出る。

bitbake-layers add-layer ../meta-openembedded/meta-oe
bitbake-layers add-layer ../meta-openembedded/meta-multimedia
bitbake-layers add-layer ../meta-openembedded/meta-python
bitbake-layers add-layer ../meta-openembedded/meta-networking
bitbake-layers add-layer ../meta-qt5
bitbake-layers add-layer ../meta-raspberrypi
bitbake-layers add-layer ../meta-rpi
m-tmatma commented 5 years ago

thud (2.6)

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

cd poky
git clone  -b thud  git://git.openembedded.org/meta-openembedded
git clone  -b thud  git://git.yoctoproject.org/meta-raspberrypi
git clone  -b thud  git://github.com/meta-qt5/meta-qt5.git
git clone  -b thud  https://github.com/jumpnow/meta-rpi.git

export DL_DIR=${HOME}/downloads
export MACHINE=raspberrypi3
source oe-init-build-env build-rpi

mkdir -p ${DL_DIR}
ln -sf ${DL_DIR}

bitbake-layers show-layers

bitbake-layers remove-layer meta-yocto-bsp
bitbake-layers add-layer ../meta-openembedded/meta-oe
bitbake-layers add-layer ../meta-openembedded/meta-multimedia
bitbake-layers add-layer ../meta-openembedded/meta-python
bitbake-layers add-layer ../meta-openembedded/meta-networking
bitbake-layers add-layer ../meta-qt5
bitbake-layers add-layer ../meta-raspberrypi
bitbake-layers add-layer ../meta-rpi

bitbake console-image

ビルドエラー

~/poky/build-rpi$ bitbake console-image
Parsing recipes: 100% |##################################################################################| Time: 0:05:05
Parsing of 2279 .bb files complete (0 cached, 2279 parsed). 3247 targets, 136 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'libomxil' (but /home/tsuchiyama/poky/meta-raspberrypi/recipes-multimedia/omxplayer/omxplayer_git.bb DEPENDS on or otherwise requires it)
libomxil was skipped: because it has a restricted license not whitelisted in LICENSE_FLAGS_WHITELIST
NOTE: Runtime target 'omxplayer' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['omxplayer', 'libomxil']
ERROR: Required build target 'console-image' has no buildable providers.
Missing or unbuildable dependency chain was: ['console-image', 'omxplayer', 'libomxil']

Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

以下かな? https://lists.yoctoproject.org/pipermail/yocto/2017-August/037439.html

m-tmatma commented 5 years ago

以下を実施

bitbake console-basic-image
m-tmatma commented 5 years ago

bitbake-layers remove-layer meta-yocto-bsp を実行しないでみる

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

cd poky
git clone  -b thud  git://git.openembedded.org/meta-openembedded
git clone  -b thud  git://git.yoctoproject.org/meta-raspberrypi
git clone  -b thud  git://github.com/meta-qt5/meta-qt5.git
git clone  -b thud  https://github.com/jumpnow/meta-rpi.git

export DL_DIR=${HOME}/downloads
export MACHINE=raspberrypi3
source oe-init-build-env build-rpi

mkdir -p ${DL_DIR}
ln -sf ${DL_DIR}

bitbake-layers show-layers

bitbake-layers add-layer ../meta-openembedded/meta-oe
bitbake-layers add-layer ../meta-openembedded/meta-multimedia
bitbake-layers add-layer ../meta-openembedded/meta-python
bitbake-layers add-layer ../meta-openembedded/meta-networking
bitbake-layers add-layer ../meta-qt5
bitbake-layers add-layer ../meta-raspberrypi
bitbake-layers add-layer ../meta-rpi

bitbake console-image
tsuchiyama@ubuntu1804:~/poky/build-rpi$ bitbake console-image
Parsing recipes: 100% |##########################################| Time: 0:05:10
Parsing of 2280 .bb files complete (0 cached, 2280 parsed). 3248 targets, 137 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'libav' (but /home/tsuchiyama/poky/meta-raspberrypi/recipes-multimedia/omxplayer/omxplayer_git.bb DEPENDS on or otherwise requires it)
ffmpeg PROVIDES libav but was skipped: because it has a restricted license not whitelisted in LICENSE_FLAGS_WHITELIST
NOTE: Runtime target 'omxplayer' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['omxplayer', 'libav']
ERROR: Required build target 'console-image' has no buildable providers.
Missing or unbuildable dependency chain was: ['console-image', 'omxplayer', 'libav']

Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
m-tmatma commented 5 years ago

bitbake console-basic-image が失敗

ERROR: console-basic-image-1.0-r0 do_rootfs: Function failed: do_rootfs
ERROR: Logfile of failure stored in: /home/tsuchiyama/poky/build-rpi/tmp/work/raspberrypi3-poky-linux-gnueabi/console-basic-image/1.0-r0/temp/log.do_rootfs.22930
ERROR: Task (/home/tsuchiyama/poky/meta-rpi/images/console-basic-image.bb:do_rootfs) failed with exit code '1'
NOTE: Tasks Summary: Attempted 3833 tasks of which 5 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
  /home/tsuchiyama/poky/meta-rpi/images/console-basic-image.bb:do_rootfs
Summary: There was 1 WARNING message shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
tsuchiyama@ubuntu1804:~/poky/build-rpi$ df
Filesystem     1K-blocks     Used Available Use% Mounted on
udev             8191396        0   8191396   0% /dev
tmpfs            1642604     1568   1641036   1% /run
/dev/sda1      384529880 52606184 312320960  15% /
tmpfs            8213008        0   8213008   0% /dev/shm
tmpfs               5120        4      5116   1% /run/lock
tmpfs            8213008        0   8213008   0% /sys/fs/cgroup
/dev/loop1         13312    13312         0 100% /snap/gnome-characters/103
/dev/loop3         14848    14848         0 100% /snap/gnome-logs/37
/dev/loop0        144384   144384         0 100% /snap/gnome-3-26-1604/70
/dev/loop2          2432     2432         0 100% /snap/gnome-calculator/180
/dev/loop5          3840     3840         0 100% /snap/gnome-system-monitor/51
/dev/loop4         35584    35584         0 100% /snap/gtk-common-themes/319
/dev/loop6         89088    89088         0 100% /snap/core/4917
tmpfs            1642600       28   1642572   1% /run/user/121
tmpfs            1642600       40   1642560   1% /run/user/1000
/dev/sr0           83904    83904         0 100% /media/tsuchiyama/VBox_GAs_6.0.41
/dev/loop7         93312    93312         0 100% /snap/core/6531
/dev/loop8         13312    13312         0 100% /snap/gnome-characters/139
/dev/loop9          2304     2304         0 100% /snap/gnome-calculator/260
/dev/loop10         3840     3840         0 100% /snap/gnome-system-monitor/57
/dev/loop11        14976    14976         0 100% /snap/gnome-logs/45
/dev/loop12        36224    36224         0 100% /snap/gtk-common-themes/1198
/dev/loop13       144128   144128         0 100% /snap/gnome-3-26-1604/82
m-tmatma commented 5 years ago
git clone https://gitlab.linphone.org/BC/public/meta-bc.git
m-tmatma commented 5 years ago
IMAGE_INSTALL_append = " linphone"
LICENSE_FLAGS_WHITELIST = "commercial"
BB_ENV_EXTRAWHITE += "JAVA_HOME"
BBMASK += "/path/to/poky/sources/meta-bc/linphone/libav/libav_%.bbappend"
m-tmatma commented 5 years ago