ラズベリーファイ用のクロスコンパイル環境を作りたいです。これで、qemu-armベースのクロスコンパイル環境を備えたVMがあります。これ記事)とても遅いです。
私の考えでは、ネイティブi386コンパイラがさまざまなアーキテクチャ用の実行可能ファイルを生成できると思います。ツールチェーンと適切に構成されたmake.confのみが必要ですが、私が間違っている可能性があります。
クロス構築のためにシステムを構成する方法を知っている人はいますか?
- ホストシステム:vm i386のfreebsd 11
- ターゲット: freebsd 11 armv6hf
答えてくれてありがとう!
答え1
FreeBSD 11にはすでに利用可能なクロスコンパイラがあります。
i386 または amd64 ホストで gnatcross-aarch64 ポートを試すことができます。
ポート上のすべてのgnatcrossビットをコンパイルできます。 pkgを使用してインストールできるプロジェクトは2つあります。 「pkg search gnatcross」を実行するとリストが表示されます。
FreeBSD 11はRaspberry PI 3では機能しないため、使用に問題がある可能性があります。 FreeBSD 12ファイルを使用するには、gnatcross-*パッケージを変更する必要があるかもしれません。私は少し調整し、必要なv12ファイル(base.txz)でdistfilesキャッシュを増やしました。使用していたポート名を変更しました。 gnatcross-*の代わりにgx-*に名前を付けました。
gnatcrossはAdaコンパイラを含んでいるので有名です。
FreeBSD環境でクロスコンパイラを生成するには、いくつかの技術があります。あなたは試すことができますこれ。
答え2
私はVPSを持っており、それをpudriereと一緒に使用します(参照ここ)。私はこれが最も簡単な解決策だと思います。