Ini ialah arahan xsubpp yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.
JADUAL:
NAMA
xsubpp - pengkompil untuk menukar kod Perl XS kepada kod C
SINOPSIS
xsubpp [-v] [-kecuali] [-s pola] [-prototaip] [-noversioncheck] [-noline nombor]
[-nooptimize] [-peta taip peta taip] [-pengeluaran nama fail]... fail.xs
DESCRIPTION
Pengkompil ini biasanya dijalankan oleh makefiles yang dibuat oleh ExtUtils::MakeMaker atau oleh
Modul::Bina atau alat binaan modul Perl yang lain.
xsubpp akan menyusun kod XS ke dalam kod C dengan membenamkan binaan yang diperlukan untuk membiarkan C
fungsi memanipulasi nilai Perl dan mencipta gam yang diperlukan untuk membenarkan Perl mengaksesnya
fungsi. Pengkompil menggunakan peta taip untuk menentukan cara memetakan parameter fungsi C dan
pembolehubah kepada nilai Perl.
Pengkompil akan mencari fail peta taip yang dipanggil peta taip. Ia akan menggunakan yang berikut
laluan carian untuk mencari peta taip lalai, dengan peta taip paling kanan diutamakan.
../../../typemap:../../typemap:../typemap:typemap
Ia juga akan menggunakan peta taip lalai yang dipasang sebagai "ExtUtils::typemap".
PILIHAN
Ambil perhatian bahawa pilihan MakeMaker "XSOPT" boleh digunakan untuk menambah pilihan ini pada mana-mana fail make
dihasilkan oleh MakeMaker.
-hiertype
Mengekalkan '::' dalam nama jenis supaya jenis hierarki C++ boleh dipetakan.
-kecuali
Menambah stub pengendalian pengecualian pada kod C.
-peta taip peta taip
Menunjukkan bahawa peta taip yang dibekalkan pengguna harus diutamakan daripada lalai
peta taip. Pilihan ini boleh digunakan beberapa kali, dengan peta taip terakhir mempunyai
keutamaan tertinggi.
-pengeluaran nama fail
Menentukan nama fail output untuk dijana. Jika tiada fail dinyatakan, keluarkan
akan ditulis kepada output standard.
-v Mencetak xsubpp nombor versi ke output standard, kemudian keluar.
-prototaip
Secara lalai xsubpp tidak akan menjana kod prototaip secara automatik untuk semua xsub. ini
bendera akan membolehkan prototaip.
-noversioncheck
Melumpuhkan ujian masa larian yang menentukan sama ada fail objek (berasal daripada ".xs"
fail) dan fail ".pm" mempunyai nombor versi yang sama.
-noline nombor
Menghalang kemasukan arahan '#line' dalam output.
-nooptimize
Melumpuhkan pengoptimuman tertentu. Satu-satunya pengoptimuman yang terjejas pada masa ini ialah
penggunaan sasarans dengan kod C output (lihat perlguts). Ini mungkin perlahan
turunkan kod yang dijana, tetapi inilah caranya xsubpp sebanyak 5.005 dan lebih awal dikendalikan.
-noinout
Lumpuhkan pengecaman pengisytiharan "IN", "OUT_LIST" dan "INOUT_LIST".
-noargtypes
Lumpuhkan pengecaman perihalan seperti ANSI bagi tandatangan fungsi.
-C++ Pada masa ini tidak melakukan apa-apa langsung. Bendera ini telah menjadi larangan untuk banyak versi
daripada perl, sekurang-kurangnya sejauh perl5.003_07. Ia dibenarkan di sini untuk ke belakang
keserasian.
-s=... or -jalur=...
ini pilihan is kabur and berkecil hati.
Jika dinyatakan, rentetan yang diberikan akan dilucutkan dari permulaan C
nama fungsi dalam fungsi XS yang dijana (jika ia bermula dengan awalan itu). ini
hanya digunakan untuk XSUB tanpa blok "CODE" atau "PPCODE". Sebagai contoh, XS:
void foo_bar(int i);
apabila "xsubpp" dipanggil dengan "-s foo_" akan memasang fungsi "foo_bar" dalam Perl,
tetapi benar-benar panggil bar(i) dalam C. Selalunya, ini adalah bertentangan dengan apa yang anda mahukan
dan mod kegagalan agak kabur, jadi sila elakkan pilihan ini jika boleh.
PERSEKITARAN
Tiada pembolehubah persekitaran digunakan.
Gunakan xsubpp dalam talian menggunakan perkhidmatan onworks.net