[Armadillo:09264] Re: Armadillo-810でOpenCVのサンプルをコンパイル時のエラーに関して
大野徹
email@hidden
2013年 10月 16日 (水) 16:29:28 JST
大野です。
毎々お世話になります。
原田様
最後のビルドのところで躓いております。
以下の手順にて作業しました。
1、ダウンロード
linux-3.4-at5.tar.gz
atmark-dist-20130704.tar.gz
2、解凍
$ tar xzvf linux-3.4-at5.tar.gz
$ tar xzvf atmark-dist-20130704.tar.gz
3、ユーザランドからカーネルへシンボリックリンクを張る
$ cd atmark-dist-20130704
$ ln -s ../linux-3.4-at5 ./linux-3.4.x
4、OpenCVのサンプルを用意する
ホームページの例をそのままソースファイルとMakefileにしました
→opencv_sampleに配置
5、Armadillo-810のユーザランドをコピー
$ cd atmark-dist-20130704/vendors/AtmarkTechno
$ cp -r Armadillo-810 ./Armadillo-810-opencv
6、OpenCVのサンプルをコピー
$ cp -r opencv_sample
~/atmark-dist-20130704/vendors/AtmarkTechno/Armadillo-810-opencv/
7、Makefileの修正
atmark-dist-20130704/vendors/AtmarkTechno/Armadillo-810-opencv\Makefile
の26行目を修正
SUBDIR_y =
↓
SUBDIR_y = opencv_sample/
8、make menuconfig
/atmark-dist-20130704でmake menuconfigを実行しました
Vendor:AtmarkTechno
Product:Armadillo-810-opencv
Exitで終了すると自動的にKernelのコンフィグが始まります。
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -C linux-3.4.x oldconfig
→これを実行しているようです。
* Restart config...
*
*
* General setup
*
Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [N/y/?]
(NEW)
→対話式で色々聞かれますが、全てエンターを押しました。
*** End of Linux kernel configuration.
*** Check the top-level Makefile for additional configuration.
*** Next, you must run 'make dep'.
→エンターを押し続けると上記のメッセージを表示して終了します。
$ make
ERROR: you need to do a 'make dep' first
と表示されるので、make depを実行しました。
$ make dep
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -C linux-3.4.x dep
make[1]: ディレクトリ `/home/atmark/sdboot/build/linux-3.4-at5' に入ります
:
:
その後、makeを実行しても
ERROR: you need to do a 'make dep' firstと表示されます。
今回の目的はromfs.imgを作成することなので、
$ make romfs
を実行しました。
順調に進みましたが、最後の方で以下のメッセージが表示されてビルドが止まりま
す。
------------------------------
cp: `mail' を stat できません: そのようなファイルやディレクトリはありません
make[2]: ディレクトリ
`/home/atmark/sdboot/build/atmark-dist-20130704/user/smtpclient' から出ます
make[2]: ディレクトリ
`/home/atmark/sdboot/build/atmark-dist-20130704/user/squashfs-tools' に入り
ます
mkdir -p /home/atmark/sdboot/build/atmark-dist-20130704/romfs/usr/
mkdir -p /home/atmark/sdboot/build/atmark-dist-20130704/romfs/usr/bin
for bin in /usr/bin/mksquashfs /usr/bin/unsquashfs; do \
romfs-inst.sh squashfs-tools-4.2/squashfs-tools/`basename
$bin` $bin; \
done
cp: `squashfs-tools-4.2/squashfs-tools/mksquashfs' を stat できません: その
ようなファイルやディレクトリはありません
cp: `squashfs-tools-4.2/squashfs-tools/unsquashfs' を stat できません: その
ようなファイルやディレクトリはありません
make[2]: ディレクトリ
`/home/atmark/sdboot/build/atmark-dist-20130704/user/squashfs-tools' から出
ます
make[2]: ディレクトリ
`/home/atmark/sdboot/build/atmark-dist-20130704/user/sudo' に入ります
romfs-inst.sh /usr/bin/sudo
cp: `sudo' を stat できません: そのようなファイルやディレクトリはありません
chmod 4611 /home/atmark/sdboot/build/atmark-dist-20130704/romfs/usr/bin/sudo
chmod: `/home/atmark/sdboot/build/atmark-dist-20130704/romfs/usr/bin/sudo'
にアクセスできません: そのようなファイルやディレクトリはありません
make[2]: *** [romfs] エラー 1
make[2]: ディレクトリ
`/home/atmark/sdboot/build/atmark-dist-20130704/user/sudo' から出ます
make[1]: *** [romfs] エラー 2
make[1]: ディレクトリ `/home/atmark/sdboot/build/atmark-dist-20130704/user'
から出ます
make: *** [romfs] エラー 1
-----------------------------------
stat系のエラーの場合はMakeのルールがない、あるいはファイル名の指定が間違って
いて見つからないという場合が多いと思うのですが?
手順の抜けや誤りがあるのでしょうか?
make clean して、$ sudo make romfsをしてみましたが結果は同じでした。
何度も恐縮ですが、対応方法が分かると助かります。
よろしくお願い致します。
armadillo メーリングリストの案内