お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2013-12-25 09:57:07

fatcat
メンバ
登録日: 2009-08-25

PandaBoard上のUbuntu12.04で実行ファイル実行時に、No such file or directory

クロス環境でC++の開発を行っており、ホストPCでクロスコンパイルした実行ファイルがPandaBoard上で動作しない問題が発生しております。
プログラム名をhelloとした際に
PandaBoard上で「ls -al」とするとhelloが表示されファイルが存在することが確認できるのですが
実際に動作させようとして「./ hello」としたときにNo such file or directoryと表示されます。
原因や動作させる方法など、ご教授いただければありがたく思います。
環境は以下の通りです。

開発環境(x86)
 Ubuntu12.04
 Eclipse
 Sourcery CodeBench arm-gnu-linux
 環境構築はhttp://denizbeker.blogspot.jp/2013/08/cross-compile-for-pandaboard-es-by.html を参考にしました。

動作環境
 PandaBoardES(RevB3)
 Ubuntu12.04

なおPandaBoard上でビルドすると期待通りの動作をします(PandaBoard上ではCのプログラムをビルド)。

オフライン

 

#2 2013-12-25 19:47:02

array
メンバ
登録日: 2007-03-13

Re: PandaBoard上のUbuntu12.04で実行ファイル実行時に、No such file or directory

PandaboardってARMがCPUなんじゃないですか?
だとするとx86のバイナリは動きません。

オフライン

 

#3 2013-12-26 11:05:37

hito
管理者
登録日: 2007-03-18

Re: PandaBoard上のUbuntu12.04で実行ファイル実行時に、No such file or directory

fatcat による投稿:

PandaBoard上で「ls -al」とするとhelloが表示されファイルが存在することが確認できるのですが
実際に動作させようとして「./ hello」としたときにNo such file or directoryと表示されます。

bashはARCH違いのプログラムを走らせようとしたときにNo such file or directoryを吐きます。
zshのようにbad interpreter的なことを言ってくれればいいのですが、残念ながらそういう仕様。

・とりあえず原因がARCH違いであることを確認するために、file hello して実行バイナリの種別を確認する
・クロスコンパイルしているハズなのに異なるバイナリができている原因を確認する

という順番で追い詰めるのが正しそうです。

オフライン

 

#4 2013-12-26 11:09:08

fatcat
メンバ
登録日: 2009-08-25

Re: PandaBoard上のUbuntu12.04で実行ファイル実行時に、No such file or directory

arrayさん、hitoさんありがとうございます。
ARM用バイナリであることはfileコマンドでARM用であることは確認しました。
そのため、hitoさんがおっしゃっているように「クロスコンパイルしているハズなのに異なるバイナリができている原因を確認する」の可能性を追究していきます。

オフライン

 

Board footer

Powered by FluxBB