[Armadillo:01044] Re: libjpegのクロスコンパイルについて

nakai email@hidden
2006年 6月 14日 (水) 14:47:26 JST


中井です。

あくまでjpegsrc.v6b.tar.gzのソースからコンパイルしたものを
使いたいようですね^^;
ならビルド手順は以下のとおりです。

./configure  --host=i686-pc-linux-gnu --target=arm-linux-gnu \
                 --enable-shared CC=arm-linux-gcc
make

他の手順は、私の開発環境下では必要無しでした。
kpeg-6b/.libs
にコンパイルしたライブラリが作成されます。
インストールに関しては、がんばってみてください。



> > arm-cross用のパッケージをインストールしたんですよね?
> 
> http://www.ijg.org/
> からダウンロードしたjpegsrc.v6b.tar.gzをtarで解凍して、解凍フォルダ内にて、
> 
> > >configure --host=i386-linux --target=strongarm-linux
>     --prefix=/opt/Embedix/tools/arm-linux --enable-shared
> 
> を実行し、その後/usr/bin/libtoolを解凍フォルダにコピーし、
> make, make installを実行しました。
> このconfigureのオプションで、arm-cross用に設定したつもりだったんですが。
> 
> http://ogapee.at.infoseek.co.jp/zaurus/sl-devel.html
> のlibjpeg 6bの項参考
> 
> > #arm-linux-gcc -g -Wall -Ijpeg-6b -o sample jpegio.c sample.c
> >       /usr/arm-linux/lib/libjpeg.a
> > とした場合、成功しませんか?
> 
> /usr/arm-linux/lib内にlibjpeg.aは内容です。
> やはり、設定が不足してるのかもしれません。
> 
> 
> nakai wrote:
> > 中井です。
> > 
> >> たびたびありがとうございます。
> >> ご指摘のような確認方法があるとは知りませんでした。
> >> linuxに関して無知なもので、理解が遅いとは思いますが
> >> よろしくお願いします。
> >>
> >>> arm-linux-objdump -f /opt/Embedix/tools/arm-linux/lib/libjpeg.a
> >>> ですね。
> >>> 正常な場合、
> >>> file format elf32-littlearm
> >>> と見えるとおもいます。
> >> 上の件試してみました。
> >> 実行結果たくさんのオブジェクトファイルが表示されたのですが、
> >> file format elf32-little
> >> file formatは全部上のようになっておりました。
> >> ちなみにarchitectureはUNKNOWN!です。
> >>
> >> このファイルはarm対応になっていないのですのですかね?
> > 
> > 違うようですね。
> > arm-cross用のパッケージをインストールしたんですよね?
> > #arm-linux-gcc -g -Wall -Ijpeg-6b -o sample jpegio.c sample.c 
> >       /usr/arm-linux/lib/libjpeg.a
> > とした場合、成功しませんか?
> > 
> >> 江口
> >>
> >>
> >> nakai wrote:
> >>> 中井です。
> >>>
> >>>>>> libjpeg62-dev_6b-10_arm.deb
> >>>>>> libjpeg62_6b-10_arm.deb
> >>>>>> を次のように変換。
> >>>>>>
> >>>>>> dpkg-cross --build --arch arm libjpeg-*_arm.deb
> >>>>> ご意見いただいたとおりに試してみましたが、エラーの状況は変わりませんでした。
> >>>>> ちなみに、エラーメッセージの詳細は下のようになっております。
> >>>>>
> >>>>> //実行コマンド
> >>>>> #arm-linux-gcc -g -Wall -Ijpeg-6b -o sample jpegio.c sample.c
> >>>>> /opt/Embedix/tools/arm-linux/lib/libjpeg.a
> >>>>> //以下エラー
> >>>>> /usr/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/bin/ld:
> >>>>> /opt/Embedix/tools/arm-linux/lib/libjpeg.a(jcapimin.o):Relocations in
> >>>>> generic ELF (EM: 3)
> >>>>> /opt/Embedix/tools/arm-linux/lib/libjpeg.a: could not read symbols: File
> >>>>> in wrong format
> >>>>> collect2: ld return 1 exit status
> >>>> パッケージ内のlibjpeg.aのprefixは「usr/lib/」となってると思います。
> >>>> 普通に、(root dirを変更しない場合)インストールすると、
> >>>> 「/usr/arm-linux/lib/libjpeg.a」にインストールされると思いますが。
> >>>>
> >>>> ためしに、
> >>>> file /opt/Embedix/tools/arm-linux/lib/libjpeg.a
> >>>> でファイルフォーマットを確認したらどうでしょうか?
> >>> 間違えました^^;
> >>> arm-linux-objdump -f /opt/Embedix/tools/arm-linux/lib/libjpeg.a
> >>> ですね。
> >>> 正常な場合、
> >>> file format elf32-littlearm
> >>> と見えるとおもいます。
> >>>
> >>>>> 大変お手数ですが、引き続きよろしくお願いします。
> >>>>>
> >>>>> 江口
> >>>>>
> >>>>> nakai wrote:
> >>>>>> 中井です。
> >>>>>>
> >>>>>> libjpegでしたら、arm用のdebパッケージをクロス向けに
> >>>>>> 変換して使用したらどうでしょうか?
> >>>>>>
> >>>>>> パッケージ:
> >>>>>> http://packages.debian.org/stable/libs/libjpeg62
> >>>>>> http://packages.debian.org/stable/libdevel/libjpeg62-dev
> >>>>>>
> >>>>>> libjpeg62-dev_6b-10_arm.deb
> >>>>>> libjpeg62_6b-10_arm.deb
> >>>>>> を次のように変換。
> >>>>>>
> >>>>>> dpkg-cross --build --arch arm libjpeg-*_arm.deb
> >>>>>>
> >>>>>> でどうでしょう?
> >>>>>>
> >>>>>>
> >>>>>>> 私は現在libjpegを使ったプログラムをcolinux上で
> >>>>>>> arm-linux-gccを用いクロスコンパイルを行い、
> >>>>>>> armadillo-9にデプロイしようと考えています。
> >>>>>>>
> >>>>>>> しかし、arm-linux-gccを実行する際に、
> >>>>>>> libjpeg.aに対しRelocations in generic ELF(EM: 3)
> >>>>>>> というエラーがでてしまいコンパイルが実行できません。
> >>>>>>>
> >>>>>>> libjpegに対しては、
> >>>>>>>
> >>>>>>>> configure --host=i386-linux --target=strongarm-linux
> >>>>>>>     --prefix=/opt/Embedix/tools/arm-linux --enable-shared
> >>>>>>>
> >>>>>>> というオプションをつけ、armクロスコンパイル用にしているつもりです。
> >>>>>>>
> >>>>>>> http://lists.atmark-techno.com/pipermail/armadillo/2005-May/000275.html
> >>>>>>>
> >>>>>>> をみると、armadillo-9にlibjpegを用いたものをデプロイできそうなのですが、
> >>>>>>> その方法がわかりません。
> >>>>>>>
> >>>>>>> もしなにかお気づきの点ありましたら、
> >>>>>>> ご教授いただけませんでしょうか。よろしくお願いします。
> >>>>>> _______________________________________________
> >>>>>> armadillo mailing list
> >>>>>> email@hidden
> >>>>>> http://lists.atmark-techno.com/mailman/listinfo/armadillo
> >>>>>>
> >>>>>>
> >>>>> -- 
> >>>>> *************************************
> >>>>> (株)内田洋行
> >>>>> 次世代ソリューション開発センター
> >>>>> プロダクト開発課
> >>>>>
> >>>>> 江口敦央
> >>>>>
> >>>>> TEL:03-5634-6367
> >>>>> FAX:03-5634-6860
> >>>>> *************************************
> >>>>>
> >>>>> _______________________________________________
> >>>>> armadillo mailing list
> >>>>> email@hidden
> >>>>> http://lists.atmark-techno.com/mailman/listinfo/armadillo
> >>>> _______________________________________________
> >>>> armadillo mailing list
> >>>> email@hidden
> >>>> http://lists.atmark-techno.com/mailman/listinfo/armadillo
> >>> _______________________________________________
> >>> armadillo mailing list
> >>> email@hidden
> >>> http://lists.atmark-techno.com/mailman/listinfo/armadillo
> >>>
> >>>
> >> -- 
> >> *************************************
> >> (株)内田洋行
> >> 次世代ソリューション開発センター
> >> プロダクト開発課
> >>
> >> 江口敦央
> >>
> >> TEL:03-5634-6367
> >> FAX:03-5634-6860
> >> *************************************
> >>
> >> _______________________________________________
> >> armadillo mailing list
> >> email@hidden
> >> http://lists.atmark-techno.com/mailman/listinfo/armadillo
> > _______________________________________________
> > armadillo mailing list
> > email@hidden
> > http://lists.atmark-techno.com/mailman/listinfo/armadillo
> > 
> > 
> 
> -- 
> *************************************
> (株)内田洋行
> 次世代ソリューション開発センター
> プロダクト開発課
> 
> 江口敦央
> 
> TEL:03-5634-6367
> FAX:03-5634-6860
> *************************************
> 
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/mailman/listinfo/armadillo



armadillo メーリングリストの案内