Libffi ライブラリは、さまざまな呼出規約(calling conventions)に対しての、移植性に優れた高レベルのプログラミングインターフェースを提供します。 このライブラリを用いることで、プログラム実行時に呼出インターフェース記述(call interface description)による関数を指定して呼び出すことができるようになります。
Makefile を修正して、ヘッダーファイルのインストール先を /usr/lib/libffi-3.2.1/include
でなく、標準的な
/usr/include
とします。
sed -e '/^includesdir/ s/$(libdir).*$/$(includedir)/' \ -i include/Makefile.in sed -e '/^includedir/ s/=.*$/=@includedir@/' \ -e 's/^Cflags: -I${includedir}/Cflags:/' \ -i libffi.pc.in
ibffi をコンパイルするための準備をします。
./configure --prefix=/usr --disable-static --with-gcc-arch=native
configure オプションの意味
--with-gcc-arch=native
現状のシステムに応じて gcc が最適化されるようにします。 仮にこれを指定しなかった場合、システムを誤認して誤ったコードを生成してしまう場合があります。 生成されたコードが、より劣ったシステム向けのネイティブコードをコピーしていたとすると、より劣ったシステムに対するパラメーターを指定することとなります。 システムに応じた詳細は the x86 options in the gcc manual を参照してください。
パッケージをコンパイルします。
make
ビルド結果をテストする場合は、以下を実行します。
make check
パッケージをインストールします。
make install