crosstool-NGを使用して、NASボックスで実行されているプロセッサをターゲットにするクロスコンパイラを構築しようとしています。
NASボックスはZyXELNSA210であり、dmesg出力の例が/proc/cpuinfo
あります。
Processor : ARM926EJ-S rev 5 (v5l)
BogoMIPS : 183.09
Features : swp half thumb fastmult edsp java
CPU implementer : 0x41
CPU architecture: 5TEJ
CPU variant : 0x0
CPU part : 0x926
CPU revision : 5
...
Hardware : Oxsemi NAS
Revision : 0000
Serial : 00000d51caab2d00
ターゲットオプションページのオプション、フラグ、および()の現在の設定:
- ターゲットアーキテクチャ(アーム)
- MMUを使用する(はい)
- エンディアン(リトルエンディアン)
- ビットネス(32ビット)
- デフォルトの命令セットモード(arm)
- EABIを使用する(はい)
- アーキテクチャレベル--with-arch=()
- CPUのアセンブリを発行します--with-cpu=()
- CPUに合わせて調整()
- 特定のFPUを使用する()
- 浮動小数点(ソフトウェア)
- ターゲットCFLAGS()
- ターゲットLDFLAGS()
「アーキテクチャレベル」と「CPU用のアセンブリを出力する」で、、、などのさまざまな組み合わせを試してきましたが、arm926ej-s
どちらのオプションがどこに行くのかわかりません。armv5l
armv5tej
crosstool-NGにはボックスで使用されているLinuxのバージョンがないため、ターゲットOSをベアメタルに設定しました。
また、ツールチェーンが構築されたら、同じオプションをコンパイラに再度渡す必要がありますか。
これまでのところ、試みによってIllegal instruction
メッセージが作成されました。
編集
正しいパラメータを見つける方法を明示的に参照したARMGCCツールチェーンの設定に関する記事を誰かが教えてくれれば、それは私の質問に答えるでしょう。