私はbuildrootを使ってクロスコンパイラをセットアップしました。
ターゲットデバイスはLinuxを実行しており、MIPSプロセッサ(Dreambox dm500hd)を搭載しています。
Buildroot構成(私が変更しただけのもの):MIPS用クロスコンパイラが有効なプログラムを作成していないようです
- ターゲット構成
- アーキテクチャ:MIPS(リトルエンディアン)
- アーキテクチャバリアント:ジェネリックMIPS32
- ツールチェーン構成
- [*] C++ Suを有効にするPPORT
- [*]私はセットアップ手順とbuildrootが正常にコンパイラ(MIPS-のlinux-gccとグラム++)を行い、その後ましコンパイラのリンク時の最適化をサポート
を有効にします。
Hello Worldのファイル私はHello Worldのをコンパイルすることができますが、私は、ターゲットデバイス上でそれを実行すると、エラーがスローされ
#include <iostream>
using namespace std;
int main() {
cout << "hello world";
return 0;
}
(テスト-mips.cpp):
dm500hd:~$ ./test-mips
./test-mips: line 1: [email protected]▒�P4: not found
./test-mips: line 1: syntax error: unexpected word (expecting ")")
奇妙な文字が表示されますリトルエンディアンのコンパイラをビルドした場合にのみ、ビッグエンディアンでコンパイルされたプログラムのエラーは同じですが、▒�
の代わりにスペースがあります。
リトルエンディアンとビッグエンディアンの両方を試しましたが、問題は同じです。 buildrootを設定している間に何か間違ったことはありますか?
注::cat /proc/cpuinfo
ゲーム私はこの結果。アーキテクチャバリアントを変更する必要がありますか?
system type : BCM7413B1 STB platform
processor : 0
cpu model : Brcm4380 V4.4 FPU V0.1
BogoMIPS : 403.45
cpu MHz : 405.010
wait instruction : yes
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : no
ASEs implemented : mips16
shadow register sets : 1
kscratch registers : 0
core : 0
VCED exceptions : not available
VCEI exceptions : not available
processor : 1
cpu model : Brcm4380 V4.4 FPU V0.1
BogoMIPS : 403.45
cpu MHz : 405.010
wait instruction : yes
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : no
ASEs implemented : mips16
shadow register sets : 1
kscratch registers : 0
core : 0
VCED exceptions : not available
VCEI exceptions : not available
私は本当にそれが互換性があるかどうかわからない、私は生成されたfsをインストールして、このように動作するかどうかを確認しようとします –
ありがとう、生成されたファイルシステムをインストールして問題を修正しました。明らかに、プリインストールされたソフトウェアは、buildrootのgcc/g ++を使用してコンパイルされたプログラムとABI互換ではありません。 –