8.50. Libffi-3.4.4

Libffi 库提供一个可移植的高级编程接口,用于处理不同调用惯例。这允许程序在运行时调用任何给定了调用接口的函数。

FFI 是 Foreign Function Interface (跨语言函数接口) 的缩写。FFI 允许使用某种编程语言编写的程序调用其他语言编写的程序。特别地,Libffi 为 Perl 或 Python 等解释器提供使用 C 或 C++ 编写的共享库中子程序的能力。

估计构建时间: 1.8 SBU
需要硬盘空间: 11 MB

8.50.1. 安装 Libffi

[注意]

注意

和 GMP 类似,Libffi 在构建时会使用特定于当前处理器的优化。如果是在为另一台计算机构建系统,请将 --with-gcc-arch= 的设定值改为那一台计算机的 CPU 完全实现的某个架构名称。否则,所有链接到 libffi 的程序都可能触发非法指令异常。

准备编译 Libffi:

./configure --prefix=/usr          \
            --disable-static       \
            --with-gcc-arch=native

配置选项的含义:

--with-gcc-arch=native

保证 gcc 为当前系统进行优化。如果不使用该选项,构建系统会猜测系统架构,可能生成不正确的代码。如果要将生成的代码从本地系统复制到指令集功能较弱的系统中,需要使用目标系统架构作为该选项的参数值。关于不同系统架构的信息,参阅 gcc 手册中提供的的 x86 选项

编译该软件包:

make

运行命令以测试编译结果:

make check

安装该软件包:

make install

8.50.2. Libffi 的内容

安装的库: libffi.so

简要描述

libffi

包含跨语言函数接口 API 函数