8.21. GMP-6.3.0

GMP pakken inneholder matematikkbiblioteker. Disse har nyttige funksjoner for vilkårlig presisjonsaritmetikk.

Omtrentlig byggetid: 0.3 SBU
Nødvendig diskplass: 54 MB

8.21.1. Installasjon av GMP

[Note]

Note

Hvis du bygger for 32-bit x86, men du har en CPU som er i stand til å kjøre 64-bits kode og du har spesifisert CFLAGS i miljøet vil konfigureringsskriptet forsøke å konfigurere for 64-biter og mislykkes. Unngå dette ved å påkalle configure kommandoen nedenfor med

ABI=32 ./configure ...
[Note]

Note

Standardinnstillingene til GMP produserer biblioteker optimalisert for vertsprosessoren. Hvis det er ønskelig med biblioteker egnet for prosessorer mindre kapable enn vertens CPU, kan generiske biblioteker bli opprettet ved å legge til --host=none-linux-gnu alternativet til configure kommandoen.

Forbered GMP for kompilering:

./configure --prefix=/usr    \
            --enable-cxx     \
            --disable-static \
            --docdir=/usr/share/doc/gmp-6.3.0

Betydningen av de nye konfigureringsalternativene:

--enable-cxx

Denne parameteren aktiverer C++ støtte

--docdir=/usr/share/doc/gmp-6.3.0

Denne variabelen spesifiserer riktig sted for dokumentasjon.

Kompiler pakken og generer HTML dokumentasjonen:

make
make html
[Important]

Important

Testpakken for GMP i denne delen anses som kritisk. Ikke hopp over det under noen omstendigheter.

Test resultatene:

make check 2>&1 | tee gmp-check-log
[Caution]

Caution

Koden i gmp er svært optimalisert for prosessoren hvor den er bygget. Noen ganger vil koden som oppdager prosessoren feilidentifisere systemets evner og det vil være feil i testene eller andre applikasjoner som bruker gmp bibliotekene med meldingen Illegal instruction. I dette tilfellet bør gmp rekonfigureres med alternativet --host=none-linux-gnu og gjenoppbygges.

Sørg for at minst 199 tester i testpakken besto. Sjekk resultatene ved å gi følgende kommando:

awk '/# PASS:/{total+=$3} ; END{print total}' gmp-check-log

Installer pakken og dens dokumentasjon:

make install
make install-html

8.21.2. Innhold i GMP

Installerte biblioteker: libgmp.so og libgmpxx.so
Installert mappe: /usr/share/doc/gmp-6.3.0

Korte beskrivelser

libgmp

Inneholder matematiske presisjonsfunksjoner

libgmpxx

Inneholder C++ matematiske presisjonsfunksjoner