#blognavi
以前に話題になって結局原因がいまいちつかめていなかった問題。
petalinux-buildを行うと、最後の最後で以下のようにビルドエラーになってしまう。
[INFO ] package rootfs.cpio to /home/user/temp/temp/images/linux
[INFO ] Update and install vmlinux image
[INFO ] vmlinux linux/kernel
[INFO ] install linux/kernel
[INFO ] package zImage
[INFO ] zImage linux/kernel
[INFO ] install linux/kernel
[ERROR] ERROR: Invalid ELF file '/home/user/temp/temp/images/linux/vmlinux'
[ERROR] make[1]: *** [package-subsystem-FIT] Error 255
ERROR: Failed to build linux
で、いろいろ調べたところ、結局パッケージが足りないのが原因ということが判明。
PetalinuxのReference Guideには以下のパッケージをいれてね、と書いてある
libstdc++.i686, glibc.i686,
libgcc.i686, libgomp.i386,
ncursese-libs.i686, zlib.i686
ただし、これらのライブラリは32ビット用のものなので、注意する必要がある。
たとえば、CentOSのyumの場合には、
yum install zlib.i686
というように、アーキテクチャまで指定しないといけない模様。
ちなみにarch linuxの場合には、pacman.confの以下の行のコメントをはずす。
[multilib]
Include = /etc/pacman.d/mirrorlist
そして、以下のパッケージをインストールする。
lib32-gcc-libs 5.3.0-3
lib32-glibc 2.22-3.1
lib32-libstdc++5 3.3.6-7
lib32-ncurses 6.0-2
lib32-zlib 1.2.8-1
また、libselinuxとlibsepolはAURにパッケージがあったので、
そこからソースを落としてきてパッケージへ変換してインストール。
Yaourtを使う設定はまだしていない…
カテゴリ: [
日記] - &trackback() - 2016年01月15日 23:35:45
#blognavi
最終更新:2016年01月15日 23:46