Jest to polecenie xsubppp, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online systemu Windows lub emulator online systemu MAC OS
PROGRAM:
IMIĘ
xsubpp - kompilator do konwersji kodu Perla XS na kod C
STRESZCZENIE
xsubpp [-v] [-z wyjątkiem] [-s wzorzec] [-prototypy] [-sprawdzenie wersji] [-nolineliczby]
[-nooptymalizuj] [-mapa typów typmap] [-wyjście filename]... plik.xs
OPIS
Ten kompilator jest zwykle uruchamiany przez makefile utworzone przez ExtUtils::MakeMaker lub przez
Module::Build lub inne narzędzia do budowania modułów Perla.
xsubpp skompiluje kod XS do kodu C, osadzając konstrukcje niezbędne, aby C
funkcje manipulują wartościami Perla i tworzą klej niezbędny do umożliwienia Perlowi dostępu do nich
Funkcje. Kompilator używa map typów, aby określić sposób mapowania parametrów funkcji C i
zmiennych na wartości Perla.
Kompilator będzie wyszukiwał pliki map typów o nazwie typmap. Użyje następujących
search path, aby znaleźć domyślne mapy czcionek, przy czym pierwszeństwo ma mapa czcionek znajdująca się najbardziej po prawej stronie.
../../../typemap:../../typemap:../typemap:typemap
Będzie także używać domyślnej mapy typów zainstalowanej jako „ExtUtils::typemap”.
OPCJE
Zauważ, że opcja MakeMaker "XSOPT" może być użyta do dodania tych opcji do dowolnego makefile
wygenerowane przez MakeMakera.
-hiertyp
Zachowuje „::” w nazwach typów, aby można było mapować hierarchiczne typy C++.
-z wyjątkiem
Dodaje kody pośredniczące obsługi wyjątków do kodu C.
-mapa typów typmap
Wskazuje, że mapa typów dostarczona przez użytkownika powinna mieć pierwszeństwo przed mapą domyślną
mapy typów. Opcji tej można używać wielokrotnie, przy czym ostatnia mapa typów ma oznaczenie
najwyższy priorytet.
-wyjście filename
Określa nazwę pliku wyjściowego do wygenerowania. Jeśli nie określono żadnego pliku, wyślij
zostanie wypisany na standardowe wyjście.
-v Drukuje xsubpp numer wersji na standardowe wyjście, a następnie kończy działanie.
-prototypy
Domyślnie xsubpp nie wygeneruje automatycznie kodu prototypowego dla wszystkich xsubów. Ten
flaga włączy prototypy.
-sprawdzenie wersji
Wyłącza test czasu wykonywania, który określa, czy plik obiektowy (pochodzący z „.xs”
plik), a pliki „.pm” mają ten sam numer wersji.
-nolineliczby
Zapobiega włączeniu dyrektyw „#line” do danych wyjściowych.
-nooptymalizuj
Wyłącza niektóre optymalizacje. Jedyną optymalizacją, na którą ma to obecnie wpływ, jest
Zastosowanie cels przez wyjściowy kod C (patrz perlguts). Może to znacznie spowolnić
w dół wygenerowanego kodu, ale tak jest xsubpp 5.005 i wcześniej eksploatowane.
-Noinout
Wyłącz rozpoznawanie deklaracji „IN”, „OUT_LIST” i „INOUT_LIST”.
-noargtypy
Wyłącz rozpoznawanie opisów sygnatur funkcji zgodnych z ANSI.
-C ++ Aktualnie nie robi zupełnie nic. Ta flaga była niedostępna w wielu wersjach
perla, przynajmniej od perl5.003_07. Tutaj jest to dozwolone w przypadku odwrotu
kompatybilność.
-s=... or -pasek=...
To zdjęcie opcja is niejasny i zniechęcony.
Jeśli określono, podany ciąg zostanie usunięty z początku litery C
nazwę funkcji w generowanych funkcjach XS (jeśli zaczyna się od tego prefiksu). Ten
dotyczy tylko XSUB bez bloków „CODE” lub „PPCODE”. Na przykład XS:
void foo_bar(int i);
wywołanie „xsubpp” z „-s foo_” spowoduje zainstalowanie funkcji „foo_bar” w Perlu,
ale tak naprawdę wywołaj bar(i) w C. W większości przypadków jest to przeciwieństwo tego, czego chcesz
i tryby awarii są nieco niejasne, dlatego należy unikać tej opcji, jeśli to możliwe.
ŚRODOWISKO
Nie są używane żadne zmienne środowiskowe.
Korzystaj z xsubppp online, korzystając z usług onworks.net