TI OMAP4 Pandaboard の OS イメージをビルドしようとしています。ダウンロードした BSP はビルドできますが、gcc g++ コンパイラがないと非常に制限されます。追加するファイルが非常に多いため、QNX Momentics IDE にツール チェーンを追加するのは非常に難しいと思います。ビルドファイルを手動で変更してそれを行うことはできますか? 可能であれば、例を教えてください。前もって感謝します。
2 に答える
いいえ、TI OMAP4 Pandaboard で g++ を実行することはできません (X86 プラットフォームで実行されている既存の QNX ツールチェーンを使用して、ARM プラットフォームのソースから g++ をビルドしない限り)。
できない理由: QNX は、X86 ベースのホスト専用のビルド ツールをリリースしています。現在サポートされているホスト OS には、Windows、Linux、および QNX のいくつかのバリアントが含まれていますが、前提条件は、ホスト ハードウェアが X86 ベースであることです。
ターゲット ハードウェア上で実際にライブラリを構築したくない場合があります。実際にどこでビルドを行うかは重要ではありません (ユーザー入力などに基づいてソース コードをビルドする非常に特殊な場合を除きます)。
必要なのは、ARM ツールチェーンを使用して開発ホスト上にライブラリをビルドすることです (高度なツールを使用する場合は QCC、使い慣れた g++ インターフェイスを使用する場合は ntoarmv7-g++)。バイナリを取得したら、それを .ifs ファイルに含めることができます。次の例のように、.build ファイルに行を含めるだけです。
/path/on/targetfs/yourbinary=/path/on/buildmachine/yourbinary
mkifs がバイナリを検出するようにビルド環境が構成されている場合は、"path/on/buildmachine" の部分を省略できます。
/proc/boot の下のターゲットにバイナリを配置しても問題ない場合は、「/path/on/targetfs/」の部分も省略できます。
開発を容易にするために、バイナリを SD カードに FAT ファイルシステムで保存する方が通常は便利です。次に、.ifs ファイルを再構築することなく、バイナリを SD にコピーするだけです。
最後に、経験を積んだら、ホスト マシンのファイル システムの一部を CIFS または NFS 経由でエクスポートし、ターゲットから直接マウントすることをお勧めします。これにより、各ビルド サイクルでファイルをコピーする (場合によってはターゲットを再起動する) という問題がすべて解決されます。しかし、これはあなたの最初の質問とはかけ離れています。
QNX C/C++ コンパイラをターゲット ボードで実行しようとしているようです。正しい?
その場合、ランタイム キットをインストールするのではなく、QNX ソフトウェア開発プラットフォームをインストールすれば、準備は完了です。
System Builderを使用して QNX OSをカスタマイズすることもできますが、これは QNX SDP を使用するよりも難しくなります。
もう 1 つの注記: QNX は、 の代わりにqcc
C およびQCC
C++ を使用しgcc
ます。どちらもgcc
内部で使用していますが、QNX でコンパイルするには、qcc
代わりにgcc
.