[Armadillo:03646] Re: emdebian による eabi ビルド
email@hidden
2008年 11月 7日 (金) 13:51:26 JST
竹之下 様
お世話になっております。SFTの馬渕と申します。
少し前の話となり申し訳ございませんが、以前、弊社の橋本より何度か
お問い合わさせて頂きましたArmadillo-500におけるeabi環境の構築の件に
つきまして、ご質問させて頂きたいことがあります。
1.前回までのエラー対処
カーネル/ユーザランドのmakeを実行した際に、openssl関連のエラーが
発生しておりましたが、こちらは頂いた情報を参考に以下のライブラリを
クロス環境開発用のライブラリに変換(※)した後、インストールすることで
解決できました。ありがとうございました。
・zlib1g_1.2.3.3.dfsg-12_armel.deb
・zlib1g-dev_1.2.3.3.dfsg-12_armel.deb
・libssl0.9.8_0.9.8g-13_armel.deb
・libssl-dev_0.9.8g-13_armel.deb
※ライブラリ変換には以下のコマンドを実行
dpkg-cross -a armel -b [パッケージ名]
なお、「dpkg-cross」はdebian lennyに含まれておりませんので、
「# aptitude install dpkg-cross」を実行し、インストールしました。
また、openssl関連以外でも、その後いくつかエラーが発生しましたので、
以下のツールをインストールしました。
・bisio(ver 2.3.dfsg-5)
・flex(ver 2.5.35-2)
・genext2fs(ver 1.3-7.1-cvs200)(※)
※Armadillo-500添付のCDに収録されているものを使用。それ以外は
aptitudeコマンドによりインストール
2.新たなエラー
「1.」に示したツール等をインストールし、カーネル/ユーザランドの
makeを実行したところ、新たに以下ようなエラーが発生しました。
【エラー内容】
romfs-inst.sh -s /etc/init.d/hostname /etc/rc.d/S30hostname
romfs-inst.sh -s /etc/init.d/firewall /etc/rc.d/S30firewall
romfs-inst.sh -s /etc/init.d/networking /etc/rc.d/S40networking
[ "" != "y" ] && \
[ "y" != "y" ] || \
romfs-inst.sh -s /etc/init.d/inetd /etc/rc.d/S60inetd
[ "y" != "y" ] || \
romfs-inst.sh -s /etc/init.d/thttpd /etc/rc.d/S70thttpd
[ "" != "y" ] || \
romfs-inst.sh -s /etc/init.d/lighttpd /etc/rc.d/S70lighttpd
[ "" != "y" ] || \
romfs-inst.sh -s /etc/init.d/snmpd /etc/rc.d/S70snmpd
[ "y" != "y" ] || \
[ "y" != "y" ] || \
romfs-inst.sh -s /etc/init.d/sshd /etc/rc.d/S70sshd
romfs-inst.sh -s /etc/init.d/misc /etc/rc.d/S99misc
[ "y" != "y" ] || \
romfs-inst.sh -s /etc/init.d/rc.local /etc/rc.d/S99rc.local
tic -o/home/bagside/Desktop/kernel/atmark-dist-20080617/romfs/etc/terminfo
-e
Eterm-color,Eterm,ansi,cons25,cygwin,dumb,hurd,linux,mach,mach-bold,mach-color,pcansi,rxvt,rxvt-basic,rxvt-m,screen,screen-bce,screen-s,screen-w,sun,vt100,vt102,vt220,vt52,wsvt25,wsvt25m,xterm,xterm-color,xterm-debian,xterm-mono,xterm-r5,xterm-r6,xterm-vt220,xterm-xfree86
/home/bagside/Desktop/kernel/atmark-dist-20080617/user/terminfo/termtypes.ti
tic: symbol lookup error: tic: undefined symbol: _nc_check_termtype2
make[1]: *** [romfs] Error 127
make[1]: Leaving directory
`/home/bagside/Desktop/kernel/atmark-dist-20080617/vendors/AtmarkTechno/Armadillo-500'
make: *** [romfs] Error 2
bagvapp:/home/bagside/Desktop/kernel/atmark-dist-20080617#
上記エラー原因につきまして、お分かりになることがございましたら
ご教示願えないでしょうか。
お手数をおかけしまして、大変申し訳ございませんが、
よろしくお願い致します。
以上
--- Takenoshita Koyo <email@hidden> wrote:
> FAQ : OpenSSHでコンパイルが失敗します
> http://armadillo.atmark-techno.com/faq/openssh-build-failed
>
> クロス開発用ライブラリをインストールする方法
> http://armadillo.atmark-techno.com/howto/install-cross-libraries
>
> 橋本 佳己 wrote:
> > 竹之下 様
> >
> > いつもお世話になっております。
> > SFTの橋本です。
> >
> > 先日、お送りしたエラーについては
> > 何とか解決しました。
> > 新たに下記のエラーが発生したので
> >
> /home/bagside/Desktop/kernel/atmark-dist-20080617/user/opensshのMakefile
を
> > 以下のように修正しました。
> > しかし、別のエラーが発生してしまい対応内容を調べましたが
> > 判りませんでした。
> > もし、竹之下様の方で情報がありましたら
> > 教えて頂けないでしょうか?
> >
> > 【前回送付したエラー内容】
> > make[2]: Entering directory
> `/home/bagside/Desktop/kernel/atmark-dist-20080617/user/busybox'
> > sh ./mkconfig > .config.tmp
> > if cmp -s .config.mkconfig .config.tmp ; \
> > then \
> > rm -f .config.tmp ; \
> > else \
> > mv -f .config.tmp .config.mkconfig ; \
> > fi
> > make[2]: *** No rule to make target
> `/home/bagside/Desktop/kernel/atmark-dist-20080617/user/busybox/.config',
> needed by
> >
>
`/home/bagside/Desktop/kernel/atmark-dist-20080617/user/busybox/applets/applets.o'.
> Stop.
> > make[2]: Leaving directory
> `/home/bagside/Desktop/kernel/atmark-dist-20080617/user/busybox'
> > make[1]: *** [all] Error 2
> > make[1]: Leaving directory
> `/home/bagside/Desktop/kernel/atmark-dist-20080617/user'
> > make: *** [subdirs] Error 1
> >
>
★このエラーについては、対処できました。(「.config.tmp」が「.config.config.tmp
」になっていました。)
> >
> > 【新規エラー内容】
> > make[2]: Entering directory
> > `/home/bagside/Desktop/kernel/atmark-dist-20080617/user/openssh'
> > (cd openssh-4.3p2; \
> > ./configure --build=i686-pc-linux-gnu
> --host=arm-linux-gnueabi-gnu \
> > );\
> >
> > checking for arm-linux-gnueabi-gnu-gcc... arm-linux-gnueabi-gcc
> > checking for C compiler default output file name... a.out
> > checking whether the C compiler works... yes
> > checking whether we are cross compiling... yes
> > checking for suffix of executables...
> > checking for suffix of object files... o
> > checking whether we are using the GNU C compiler... yes
> > checking whether arm-linux-gnueabi-gcc accepts -g... yes
> > checking for arm-linux-gnueabi-gcc option to accept ISO C89...
> none needed
> > checking build system type... i686-pc-linux-gnu
> > checking host system type... Invalid configuration
> `arm-linux-gnueabi-gnu': machine `arm-linux-gnueabi' not recognized
> > configure: error: /bin/sh ./config.sub arm-linux-gnueabi-gnu failed
> > make[2]: *** [openssh-4.3p2/Makefile] Error 1
> > make[2]: Leaving directory
> > `/home/bagside/Desktop/kernel/atmark-dist-20080617/user/openssh'
> > make[1]: *** [all] Error 2
> > make[1]: Leaving directory
> > `/home/bagside/Desktop/kernel/atmark-dist-20080617/user'
> > make: *** [subdirs] Error 1
> >
> > 【Makefileの修正内容】
> > MAKEHOST = $(shell $(SRC_DIR)/config.guess)
> > MAKETARGET =
> $(CROSS)gnu <-------------------------- この部分をarm-linux-gnueabiに
変更
> > CONF_OPT =
> > CONF_OPT_MISC =
> >
> > 【修正後のエラー内容】
> > checking whether system supports SO_PEERCRED getsockopt... yes
> > checking for (overly) strict mkstemp... yes
> > checking if openpty correctly handles controlling tty...
> cross-compiling
> > checking whether getpgrp requires zero arguments... yes
> > configure: error: *** Can't find recent OpenSSL libcrypto (see
> config.log for details) ***
> > make[2]: *** [openssh-4.3p2/Makefile] Error 1
> > make[2]: Leaving directory
> > `/home/bagside/Desktop/kernel/atmark-dist-20080617/user/openssh'
> > make[1]: *** [all] Error 2
> > make[1]: Leaving directory
> > `/home/bagside/Desktop/kernel/atmark-dist-20080617/user'
> > make: *** [subdirs] Error 1
> >
> >
> エラー内容から、ライブラリ(libcrypto)が見付からない為にエラーが発生し
ている
> >
> ようですが、このライブラリの入手先等をご存知でしたら教えて頂けないでし
ょうか?
> >
> > 以上、宜しくお願い致します。
> >
> >
> > /------------------------------------------------------/
> > 株式会社エス・エフ・ティー 秋田開発センター
> > 橋本 佳己
> >
> > Mail: email@hidden
> > Tel: 018-825-5530 Fax: 018-825-5531
> >
> > 〒010-0001
> > 秋田県秋田市中通2丁目2番32号 住友生命秋田ビル7階
> > /------------------------------------------------------/
> >
> >
> >> -----Original Message-----
> >> From: email@hidden
> >> [mailto:email@hidden] On Behalf
> >> Of Takenoshita Koyo
> >> Sent: Thursday, October 09, 2008 2:01 PM
> >> To: Armadillo series general discussion list
> >> Subject: [Armadillo:03526] Re:emdebianによるeabiビルド
> >>
> >>> 次にカーネルをインストールしたのですが、「make
> menuconfig」ができませ
> >> ん。
> >>> 「make config」は正常に動作しました。
> >>> エラーの内容「/usr/bin/ld: crt1.o: No such file: No such file or
> >> directory」から
> >>> "crtl.o"ファイルが存在しない為だと考えられます。
> >> おしいところまでいっていると思うのです。
> >>
> エラーメッセージまで分かっているのですから、まずは検索してみませんか?
> >>
> >> 「/usr/bin/ld: crt1.o: No such file: No such file or directory」
> >> でgoogle検索してみると、一番始めに
> >> http://www.machu.jp/diary/20050414.html#p01
> >> というページがでてきました。
> >>
> >> さらに、
> >> 「debian /usr/bin/ld: crt1.o: No such file: No such file or
> directory」
> >> で検索すると、その検索結果では一番始めに
> >> http://q.hatena.ne.jp/1193035971
> >> というページもでてきました。
> >>
> >> 2008-10-09 (木) の 12:52 +0900 に 橋本 佳己 さんは書きました:
> >>> To:竹之下 様
> >>>
> >>> SFTの橋本です。
> >>> いつもお世話になっております。
> >>>
> >>> 下記サイトの通り実行して正常にインストールできました。
> >>>
> >>>> http://www.emdebian.org/tools/crosstools.html
> >>>> emdebianのツールチェインをインストールする手順は、
> >>>> このサイトに書いてあるままです。
> >>>> apt-get するまえに、/etc/apt/source.listも書き換えてください。
> >>> 次にカーネルをインストールしたのですが、「make
> menuconfig」ができません。
> >>> 「make config」は正常に動作しました。
> >>> エラーの内容「/usr/bin/ld: crt1.o: No such file: No such file or
> >> directory」から
> >>> "crtl.o"ファイルが存在しない為だと考えられます。
> >>>
> >>> 自己責任で「Debian Lnny」を使用するように言われていたので
> >>> このような質問をするのは、大変恐縮ですが・・・
> >>> もし、何か情報がありましたらご教示お願い致します。
> >>>
> >>> 【エラー内容】
> >>> bagvapp:/home/bagside/Desktop/kernel/atmark-dist-20080617# make
> >>> menuconfig config/mkconfig > config.in make -C
> >>>
> >>
> /home/bagside/Desktop/kernel/atmark-dist-20080617/config/scripts/lxdia
> >>> log all
> >>> make[1]: Entering directory
> >> `/home/bagside/Desktop/kernel/atmark-dist-20080617/config/scri
> >> pts/lxdialog'
> >>> /usr/bin/ld: crt1.o: No such file: No such file or directory
> >>> collect2: ld returned 1 exit status
> >>>
> >>>>> Unable to find the Ncurses libraries.
> >>>>>
> >>>>> You must have Ncurses installed in order to use 'make
> menuconfig'
> >>> make[1]: *** [ncurses] Error 1
> >>> make[1]: Leaving directory
> >> `/home/bagside/Desktop/kernel/atmark-dist-20080617/config/scri
> >> pts/lxdialog'
> >>> make: *** [menuconfig] Error 2
> >>>
> >>> 当然ですが、下記の対応も行っております。
> >>>>>>> 1. クロスコンパイル用のツールチェインをインストール
> >>>>>>> email@hidden:~/$ sudo apt-get install libc6-armel-cross
>
=== 以下のメッセージは省略されました ===
--------------------------------------
Power up the Internet with Yahoo! Toolbar.
http://pr.mail.yahoo.co.jp/toolbar/
armadillo メーリングリストの案内