私は、まだネットワークをサポートしていない仮想化プラットフォーム上で、かなり制限された仮想 Ubuntu 環境を実行しています。コンパイルのベンチマークを行う必要がありますが、ゲストには build-essential がインストールされていません。.deb からインストールを実行したいのですが、必要なパッケージもすべてダウンロードする必要があります。
さらに悪いことに、私のホストは x86 ですが、ゲストは ARM です。次のようなことはできますか? apt-get に、特定のパッケージ セットがすでにインストールされているように見せかけ、必要な .debs をダウンロードし、ARM システムで動作しているように見せかけるように指示しますか?
これは大変な注文だとは思いますが、このチェーンのどの部分でもご協力いただければ幸いです。
答え1
Ubuntu の .deb を取得する場合は、次のようにします。たとえば、リリースが Maverick 用の場合、次の URL を入力して、すべての Maverick パッケージ (x86 用) のいずれかを取得します。
http://packages.ubuntu.com/maverick/allpackages
注: ベースリリースのウェブページ (上記の maverick など) から特定のパッケージのリンクをたどって特定のパッケージのダウンロード ページに進むと、そのパッケージが依存している他のパッケージがわかります。
問題は x86 ホスト上の ARM 関連ゲストであるため、(少なくとも) 次の操作を行う必要がある場合があります。
1) Synaptic パッケージ マネージャーを使用して、build-essentisl を含む必要なパッケージのソース コードをダウンロードします。
2) やりたいことは、ホスト アーキテクチャ (x86) のソース コードをゲストのターゲット アーキテクチャ (ARM) にクロスコンパイルし、仮想ゲスト (ARM) にインストールされるターゲットの .deb を作成することです。コンパイラの Gcc テクノロジはこれを処理できるはずです。訂正: ARM アーキテクチャがないため、x86 ホスト環境で仮想 ARM がどのように動作するかはわかりません。したがって、ARM アーキテクチャの実際の環境以外ではクロスコンパイルする必要はないかもしれません。したがって、2) は無視してください。Tom
3) ubucompilator で .deb パッケージを作成できる可能性があります (.deb パッケージを簡単に作成できると言われています)
4) 次の参考文献を参照してください。
Ubucompilator - ソース ファイルから .deb パッケージを作成する簡単な方法: http://www.ubuntugeek.com/ubucompilator-easy-way-of-creating-deb-packages-from-source-files.html より