HUIKKA

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 14. lokakuuta 2018 tarkistetusta versiosta . tarkastukset vaativat 3 muokkausta .
HUIKKA
Tyyppi Kehitystyökalu
Kehittäjät Yhteisö
Sisään kirjoitettu C, C++
Käyttöliittymä Komentorivi
Käyttöjärjestelmä POSIX , MS Windows
Ensimmäinen painos 1996
uusin versio 4.0.2 ( 8. kesäkuuta 2020 )
Lisenssi BSD-tyylinen lisenssi
Verkkosivusto swig.org

SWIG ( s implified w rapper and i nterface  generator ) on ilmainen työkalu C - ja C ++ -kielellä kirjoitettujen ohjelmien ja kirjastojen linkittämiseen tulkittuun ( Tcl , Perl , Python , Ruby , PHP ) tai käännettyyn ( Java , C# , Scheme , OCaml ) ) Kieli (kielet. Päätavoite: tarjota mahdollisuus kutsua joillain kielillä kirjoitettuja toimintoja muiden kielten koodista. Ohjelmoija luo .i -tiedoston , jossa on kuvaus vietyistä funktioista; SWIG luo lähdekoodin C/C++:n ja halutun kielen liimaamiseen, luo suoritettavan tiedoston .

Suoritettavan tiedoston tyyppi riippuu valitusta kielestä:

Komentosarjakielimoottorit on rakennettu C/C ++ -ohjelmiin seuraavista syistä:

Syitä C/C++-funktioiden kirjastojen asettamiseen muiden kielten tulkkien saataville:

SWIG on kirjoitettu C- ja C++ -kielellä ja se on julkaistu BSD :n kaltaisella lisenssillä helmikuusta 1996 lähtien . SWIG-lisenssi antaa sinun käyttää, jakaa ja muokata SWIG-koodia kaupallisiin ja ei-kaupallisiin tarkoituksiin käytännössä ilman rajoituksia.

Esimerkki: C-funktion kutsuminen Pythonista

Olkoon C-koodi, joka toteuttaa jonkin toiminnon, esimerkiksi tekstin tulostamisen.

/* Tiedosto : try.c */ #include <stdio.h> void echo ( void ) { printf ( " \" Hello World \"\n " ); }

Jotta voit kutsua echo() -funktion Pythonista, sinun on kirjoitettava käyttöliittymätiedosto (laajennus .i ), jonka sisältö on seuraava:

/* Tiedosto : try.i */ % moduuli mytry ulkoinen void echo ( void );

ja suorita seuraavat komennot Unix - päätteessä :

swig -python try.i gcc -c -fpic try_wrap.c try.c -DHAVE_CONFIG_H -I "/usr/local/include/python2.5" -I "/usr/local/lib/python2.5/config" gcc -shared try.o try_wrap.o -o _mytry.so

Windows -käyttöjärjestelmässä ( käytettäessä Cygwin tai MinGW ) komennot ovat erilaisia:

swig -python try.i gcc -c try_wrap.c try.c -DHAVE_CONFIG_H gcc -jaettu try_wrap.o try.o -o _try.pyd -lpython25

SWIG luo automaattisesti useita tiedostoja: " mytry.py ", " try_wrap.c " ja suoritettavan tiedoston.

Voit kutsua echo() -funktiota Pythonista käynnistämällä tulkin ja suorittamalla seuraavan koodin:

>>> tuo mytry >>> mytry . echo () "Hei maailma" >>>


Linkit

Kirjallisuus

  • Hans Petter Langtangen. Python-skripti laskennalliseen tieteeseen. - Springer, 2008. - 750 s. — ISBN 9783540739159 .