% % 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