Libffi-biblioteket gir en portabel høynivå programmeringsgrensesnitt til ulike kallkonvensjoner. Dette lar en programmerer kalle enhver funksjon ved kjøretid, spesifisert av et kallgrensesnittbeskrivelse.
FFI står for Foreign Function Interface. En FFI tillater et program skrevet på ett språk å kalle et program skrevet på et annet språk. Nærmere bestemt, Libffi kan gi en bro mellom en tolk som Perl, eller Python, og delte biblioteksunderrutiner skrevet i C eller C++.
I likhet med GMP bygges libffi med spesifikke optimaliseringer
til prosessoren som er i bruk. Hvis du bygger for et annet
system, endre verdien av --with-gcc-arch=
parameteren i
følgende kommando til et arkitekturnavn fullt implementert av
både vertens CPU og
CPU på det andre systemet. Hvis dette ikke gjøres, vil alle
applikasjoner som lenker til libffi
utløse ulovlige operasjonsfeil (Illegal Operation Errors). Hvis
du ikke kan finne en verdi trygt for begge CPUene, bytt ut
parameteren med --without-gcc-arch
for å produsere et generisk bibliotek.
Forbered libffi for kompilering:
./configure --prefix=/usr \ --disable-static \ --with-gcc-arch=native
Betydningen av konfigureringsalternativet:
--with-gcc-arch=native
Sørger for at GCC optimerer for det gjeldende systemet. Hvis dette ikke er spesifisert, gjettes systemet og koden som genereres er kanskje ikke riktig. Hvis den genererte koden vil bli kopiert fra det opprinnelige systemet til et mindre kapabelt system, bruk det mindre kapable systemet som parameter. For detaljer om alternative systemtyper, se x86 alternativene i GCC manualen.
Kompiler pakken:
make
For å teste resultatene, utsted:
make check
Installer pakken:
make install