Python boost eksempler

Python boost eksempler
“Boost er et grensesnitt mellom Python og C ++ levert via Python Language Framework. Det gjør deg i stand til å raskt og enkelt tilby C ++ klasser, metoder og enheter til PY, og omvendt, uten behov for ytterligere verktøy utenfor C ++ oversetteren din. Fordi Boost er ment å innkapsle C ++ grensesnitt uten å endre C ++ -programmet, bør du ikke være nødt til å gjøre noe annerledes for å dekke et C ++ -grensesnitt.”

Det er best å eksponere tredjepartsmoduler for Python ved hjelp av Python. På grunn av det åpenbare bibliotekets bruk av sofistikerte metaprogrammeringsmetoder, synes det å være en form for ekspressiv grensesnittdesignspråk, og forenkle semantikken for dem (IDL).

Før vi tar en titt på eksemplet, må vi sette opp Boost Python i Linux -systemet. Så vi må laste ned tjærefilen fra nettet i vår hjemmekatalog, som vist på bildet nedenfor. Det kan ta opptil 15 minutter eller mer i henhold til systemets internetthastighet.

Du må trekke ut denne nedlastede "tjære" -filen i samme mappe etter den vellykkede nedlastingen. For dette må du først åpne terminalkonsollen til Linux -systemet. Hvis du ikke vet måten å gjøre det på, bare prøv Ctrl+ALT+T, og terminalen vil bli lansert på noen få sekunder.

Innenfor det terminale spørringsområdet, må du bruke "tjære" -spørsmålet sammen med alternativet "-xf" etterfulgt av hele navnet på en fil, i.e., inkludert utvidelsen “tjære.GZ ”. Bruken av "-xf" betyr at denne filen må hentes ut kraftig uten avbrudd eller problem. Det vil bli trukket ut i løpet av sekunder. Du kan sette deg ned alle filene og mappene i den gjeldende arbeidskatalogen for å se om den er hentet ut med hell eller ikke.

Nå skal vi bevege oss innenfor den ekstraherte boost -mappen for å se innholdet. For dette har vi brukt “CD” -instruksjonen sammen med Boost -mappen fullt navn, og vi lykkes. Vi har prøvd listen "LS" -instruksjon for å liste opp alle underfiler og undermapper på skallskjermen. På oppføringen har vi også blitt vist forskjellige bash -filer, noen HTML-, HTML- og syltetøyfiler.

For å bygge motoren for Boost Python i Linux -systemet, må vi bruke bash -filen som heter “Bootstrap.SH ”på spørringsområdet for å utføre det med“./”Tegn i starten. Denne filen kan sees på som den grønne uthevede teksten i de listede filene og mappene i Boost Extracted -mappen på konsollen vår. Det har begynt å bygge boost -modulen via C -verktøysettet, i.e., C -kompilatoren som heter GCC. Det kan ta opptil 1 minutt å fullføre denne prosessen og gå mot neste trinn i denne artikkelen.

Det aller neste trinnet i denne prosessen er å lage konfigurasjon i den aktuelle mappen i Linux -systemet. For dette må du utføre “B2” -filen fra ovennevnte filer og mapper i installasjonskommandoen. Vi må bruke sudo -rettighetene til utførelse av denne instruksjonen, sammen med banen til mappen der du vil konfigurere den. I vårt tilfelle ville den mappen være "/usr" -mappen til vårt Linux -operativsystem.

Den samme kommandoen kan utføres i spesifikasjonen av en konfigurasjonsbane. Bruken av denne installasjonsinstruksjonen kan ta opptil 5 minutter å få utførelsen gjort.

Det er på tide å opprette 3 nye filer i Boost Extracted -mappen eller hjemmemappen til systemet ditt. Så vi har brukt berøringsinstruksjonen 3 ganger for å opprette en C ++ -fil, en Python og en CMake -fil. Forsikre deg om at du har Python -tolk og C ++ -kompilatoren installert i enden sammen med CMake -modulen. CMake -filen må inneholde "TXT" -forlengelsen, og filnavn for de to andre filene kan variere.

Innenfor filformatet CMake Text Type har vi spesifisert versjonen av Python vi har brukt til denne artikkelimplementeringen. Find_package -variabelfunksjonen har blitt brukt for å finne ut Python -tolken, bibliotekene og dens boostkomponenter i Python. Sammen med det må du inkludere de nødvendige katalogene til Python og boost via bruk av inkluderer_directories.

I den neste linjen har vi brukt python_add_module () for å bruke nativelib -modulen i CPROJ C ++ -filen, i.e., vil bli vist etter dette. Vi har brukt File () -funksjonsvariabelen for å kopiere prosjektet.PY -fil til destinasjonen. Lagre denne koden nå.

Det er på tide å se på C ++ -filen som heter “CPROJ” i denne artikkelen. Vi har laget en konstant karaktertype pekerfunksjon som heter “Velkommen” i denne koden. Den returnerer en viss melding til sin anropsfunksjon. Vi har brukt boost_python_module sammen med navnet på en C ++ prosjektfil uten utvidelsen. Innenfor denne boost_python_module () -funksjonen har vi brukt boost -pakken til Python for å definere velkomstfunksjonen og gi den velkomstfunksjonen som et argument.

Python -filen som heter “Prosjekt.PY ”er startet med importen av NATIVELIB -modulen via bruk av importnøkkelordet. Helt til neste linje har vi ringt velkomstfunksjonen fra ovennevnte C ++ -fil ved hjelp av NATIVELIB -modulen i utskriftserklæringen som vises.

Nå har vi opprettet en ny byggemappe i Boost Extracted -mappen med bruk av MKDIR -spørringen.

Etter dette har vi brukt CMake -spørringen for å bygge typen CMake. Etter dette, prøv ut make -kommandoen etterfulgt av utførelsen av en Python -fil.

Konklusjon

Når du går gjennom denne prosessen, vil du kunne bruke C ++ -funksjonene, bibliotekene og pakkene i Python -koden. Vi har diskutert hvordan du kan gjøre Boost Enable på Ubuntu 20.04 Linux operativsystem. Alle trinnene er veldig enkle å lære og implementere. Denne artikkelen kan implementeres på hvilken som helst Linux -distribusjon.