Thread "Hallo Welt" in XS
(18 answers)
Opened by hlubenow at 2020-01-08 18:32
Offenbar kann man dasselbe wie XS auch mit SWIG erreichen.
Dieses Beispiel funktioniert bei mir: https://www.thegeekstuff.com/2012/03/swig-perl-exa... Es scheint einfacher und klarer zu sein als mit XS. Gut dokumentiert ist es auch: http://www.swig.org/Doc1.3/Perl5.html Und man kann dieselben Grundsätze auch für andere Sprachen (Python) verwenden. Klingt ganz interessant. ------------------ Edit: Hier mal ein "Hello World" mit SWIG: hello.c hello.i compile_hello Code (shell): (dl
)
1 2 3 4 5 6 7 8 9 10 #!/bin/bash PERLCOREPATH="/usr/lib/perl5/5.18.1/i586-linux-thread-multi/CORE" MODULENAME="hello" swig -perl5 "$MODULENAME".i gcc -fpic -c -Dbool=char -I"$PERLCOREPATH" "$MODULENAME"_wrap.c "$MODULENAME".c -D_GNU_SOURCE gcc -shared "$MODULENAME".o "$MODULENAME"_wrap.o -o "$MODULENAME".so hello.pl Code (perl): (dl
)
1 2 3 4 5 6 7 #!/usr/bin/perl use strict; use warnings; use hello; hello::printHello(); - "hello.c" und "hello.i" erstellen. - In "compile_hello" den Pfad zum "CORE"-Verzeichnis der Perl-Distribution anpassen. - "./compile_hello" ausführen. - "hello.pl" erstellen und ausführen. Nicht schlecht. So stelle ich mir das schon eher vor. Last edited: 2020-01-11 17:49:45 +0100 (CET) |