私たちは大学で ARM アセンブリ言語プログラミングを行っており、自分のコンピューターで簡単な ARM プログラムを実行/シミュレートできる環境をセットアップしたいと考えています。
ARM 用の noICE デバッガーと GNU ARM ツールチェーンをインストールしました。最も単純な ARM アセンブリ プログラムを noICE にロードして、命令を 1 ステップ実行できるようにするにはどうすればよいでしょうか。
arm-hitex-elf-as -o out.elf c:\test.s を使用して、この非常に単純なシーケンスを ELF ファイルにアセンブルしようとしました。
main:
mov r0, #10
mov r1, #20
add r2, r1, r0
cmp r2, r1
beq main
.end
out.elf ファイルが生成されますが、それを noICE にロードしようとすると、「Elf エラー: ELF ファイルは実行形式ではありません」というエラー メッセージが表示され続けます。
みんなを助けてください、ありがとう!!
編集: アセンブラは再配置可能なオブジェクト ファイルのみを生成しました。そのオブジェクト ファイルを arm-hitex-elf-ld に渡すと、実際の実行可能ファイルが生成され、noICE で正常に動作するようになりました。