
x86_64 Ubuntu 11.04でi386(32ビット)用のPHP Memcache拡張機能(v2.2.6)を構築しようとしています。
./configure
デフォルトではconfig.guessが使用されますが(私のシステムに出力x86_64-unknown-linux-gnu
)、それを上書きしたいと思います。
どうやって進めますか?
答え1
クロスコンパイルには2つが必要です。ターゲットアーキテクチャ用のコードを生成できるコンパイラとターゲットアーキテクチャ*.a
用の静的ライブラリ()。少なくともインストールしてくださいlibc6-dev-i386
パッケージなど
lib32.*-dev
バッグ。また、libc6-dev-i386
クロスコンパイルに必要なgccコンポーネントも紹介します。gcc-multilib
パック 。その後、
-m32
変数にフラグを渡してgccにi386用にコンパイルするように指示しますCFLAGS
。
sudo apt-get install libc6-dev-i386 lib32ncurses5-dev … # whatever 32-bit libraries you need
export CFLAGS='-m32'
./configure …
必要なライブラリがすべて見つからない場合は、Linuxに32ビットUbuntuをインストールする方が簡単です。chroot。 Ubuntu船ルートディレクトリ ~からDebian ビルドプロジェクト、ルート指定システムを簡単に実行できます。使用ブート防止プログラム
インストールを実行します。合理的なUbuntuフォーラムのdchrootチュートリアル。