8.49. Libffi-3.4.2

Libffi-biblioteket gir et flyttbart programmeringsgrensesnitt på høyt nivå til ulike kallkonvensjoner. Dette lar en programmerer kalle enhver funksjon ved kjøring, spesifisert av en grensesnittbeskrivelse for et kall.

Omtrentlig byggetid: 1.9 SBU
Nødvendig diskplass: 10 MB

8.49.1. Installasjon av Libffi

[Note]

Note

I likhet med GMP bygges libffi med spesifikke optimaliseringer til prosessoren som er i bruk. Hvis du bygger for et annet system, eksporter CFLAGS og CXXFLAGS for å spesifisere en generisk konstruksjon for arkitekturen din. Hvis dette ikke gjøres, vil alle applikasjoner som lenker til libffi utløse ulovlige operasjonsfeil.

Forbered libffi for kompilering:

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

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 kanskje ikke er riktig for enkelte systemer. Hvis den genererte koden vil bli kopiert fra det opprinnelige systemet til et mindre kapabelt system system, bruk det mindre kapable systemet som parameter. For detaljer om alternative systemtyper, se x86 alternativene i GCC manualen.

--disable-exec-static-tramp

Deaktiver statisk trampolinestøtte. Det er en ny sikkerhet funksjon i libffi, men noen BLFS pakker (spesielt GJS og gobject-introspection) har ikke vært tilpasset det.

Kompiler pakken:

make

For å teste resultatene, utsted:

make check

Installer pakken:

make install

8.49.2. Innhold i Libffi

Installert bibliotek: libffi.so

Korte beskrivelser

libffi

inneholder API funksjonene for fremmede funksjonsgrensesnitt