%
% This is part of LFSbookja package.
%
% This is a CTIE change file for the original XML source of the LFSbook.
%
@x
@y
@z
@x
The Libffi library provides a portable, high level programming
interface to various calling conventions. This allows a programmer to call
any function specified by a call interface description at run time.
@y
Libffi ライブラリは、さまざまな呼出規約(calling conventions)に対しての、移植性に優れた高レベルのプログラミングインターフェースを提供します。
このライブラリを用いることで、プログラム実行時に呼出インターフェース記述(call interface description)による関数を指定して呼び出すことができるようになります。
@z
@x
Installation of Libffi
@y
&InstallationOf1;Libffi&InstallationOf2;
@z
@x
Similar to GMP, libffi builds with optimizations specific
to the proccesor in use. If building for another system, export
CFLAGS and CXXFLAGS to specify a generic build for your architecture.
If this is not done, all applications that link to libffi will trigger
Illegal Operation Errors.
@y
GMP と同じように libffi では、利用中のプロセッサーに応じた最適化を行いビルドされます。
異なるシステムに向けてのビルドを行う場合は CFLAGS と CXXFLAGS に対して、そのアーキテクチャー向けの汎用的なビルドを行うものにしてください。
そうしなかった場合には、libffi をリンクするアプリケーションにおいて Illegal Operation エラーを発生させることになります。
@z
%@x
% Modify the Makefile to install headers into the standard
% /usr/include directory instead of
% /usr/lib/libffi-&libffi-version;/include.
%@y
%
% Makefile を修正して、ヘッダーファイルのインストール先を /usr/lib/libffi-&libffi-version;/include でなく、標準的な /usr/include とします。
%
%@z
@x
Prepare libffi for compilation:
@y
&PreparePackage1;ibffi&PreparePackage2;
@z
@x
The meaning of the configure option:
@y
&MeaningOfOption1;configure&MeaningOfOption2;
@z
@x --with-gcc-arch=native
Ensure GCC optimizes for the current system. If this
is not specified, the system is guessed and the code generated
may not be correct for some systems. If the generated code
will be copied from the native system to a less capable
system, use the less capable system as a parameter. For details
about alternative system types, see
the x86 options in the GCC manual.
@y
現状のシステムに応じて GCC が最適化されるようにします。
仮にこれを指定しなかった場合、システムを誤認して誤ったコードを生成してしまう場合があります。
生成されたコードが、より劣ったシステム向けのネイティブコードをコピーしていたとすると、より劣ったシステムに対するパラメーターを指定することとなります。
システムに応じた詳細は
the x86 options in the GCC manual
を参照してください。
@z
@x --disable-exec-static-tramp
Disable static trampoline support. It's a new security
feature in libffi, but some BLFS packages (notably
GJS) have not been adapted for it.
@y
スタティックなトランポリン (trampoline) サポートを無効にします。
これは libffi における新しいセキュリティ機能ですが、BLFS パッケージの中 (特に GJS) では、この機能に対応していないものがあります。
@z
@x
Compile the package:
@y
&CompileThePackage;
@z
@x
To test the results, issue:
@y
ビルド結果をテストする場合は、以下を実行します。
@z
@x
Install the package:
@y
&InstallThePackage;
@z
@x
Contents of Libffi
@y
&ContentsOf1;Libffi&ContentsOf2;
@z
@x
Installed library
@y
&InstalledLibrary;
@z
@x
libffi.so
@y
libffi.so
@z
@x
Short Descriptions
@y
&ShortDescriptions;
@z
@x libffi
contains the foreign function interface API functions
@y
外部関数インターフェース API 関数を提供します。
@z