ພາສາອັງກິດພາສາຝຣັ່ງແອສປາໂຍນ

Ad


OnWorks favicon

h2xs - ອອນລາຍໃນຄລາວ

ແລ່ນ h2xs ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີຜ່ານ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ນີ້ແມ່ນຄໍາສັ່ງ h2xs ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


h2xs - ປ່ຽນໄຟລ໌ສ່ວນຫົວ .h C ເປັນສ່ວນຂະຫຍາຍ Perl

ສະຫຼຸບສັງລວມ


h2xs [OPTIONS ...] [headerfile ... [extra_libraries]]

h2xs -h|-?|- ຊ່ວຍ

ລາຍລະອຽດ


h2xs ສ້າງສ່ວນຂະຫຍາຍ Perl ຈາກໄຟລ໌ສ່ວນຫົວ C. ສ່ວນຂະຫຍາຍຈະປະກອບມີຟັງຊັນຕ່າງໆ
ເຊິ່ງສາມາດໃຊ້ເພື່ອດຶງຄ່າຂອງຄຳຖະແຫຼງ #define ທີ່ຢູ່ໃນສ່ວນຫົວ C
ໄຟລ໌.

ໄດ້ module_name ຈະຖືກນໍາໃຊ້ສໍາລັບຊື່ຂອງນາມສະກຸນ. ຖ້າ module_name ບໍ່ແມ່ນ
ສະຫນອງໃຫ້ຫຼັງຈາກນັ້ນຊື່ຂອງໄຟລ໌ header ທໍາອິດຈະຖືກນໍາໃຊ້, ມີຕົວອັກສອນທໍາອິດ
ທຶນ.

ຖ້າສ່ວນຂະຫຍາຍອາດຈະຕ້ອງການຫ້ອງສະຫມຸດເພີ່ມເຕີມ, ພວກມັນຄວນຈະຖືກລວມຢູ່ທີ່ນີ້. ການຂະຫຍາຍ
Makefile.PL ຈະດູແລການກວດສອບວ່າຫ້ອງສະຫມຸດມີຢູ່ຈິງຫຼືບໍ່ແລະວິທີການຂອງພວກມັນ
ຄວນຈະຖືກໂຫລດ. ຫ້ອງສະຫມຸດພິເສດຄວນໄດ້ຮັບການລະບຸໄວ້ໃນແບບຟອມ -lm -lposix, ແລະອື່ນໆ.
ຄືກັນກັບເສັ້ນຄໍາສັ່ງ cc. ໂດຍຄ່າເລີ່ມຕົ້ນ, Makefile.PL ຈະຄົ້ນຫາຜ່ານ
ເສັ້ນທາງຫ້ອງສະຫມຸດກໍານົດໂດຍ Configure. ເສັ້ນທາງນັ້ນສາມາດຂະຫຍາຍໄດ້ໂດຍການລວມເອົາການໂຕ້ຖຽງ
ຂອງແບບຟອມ -L/ອັນອື່ນ/ຫ້ອງສະໝຸດ/ເສັ້ນທາງ ໃນການໂຕ້ຖຽງຂອງຫ້ອງສະຫມຸດພິເສດ.

ເຖິງວ່າຈະມີຊື່ຂອງມັນ, h2xs ອາດຈະຖືກນໍາໃຊ້ເພື່ອສ້າງໂມດູນ Perl ອັນບໍລິສຸດ skeleton. ເບິ່ງ
-X ທາງເລືອກ.

OPTIONS


-A, --omit-autoload
ຍົກເລີກສະຖານທີ່ autoload ທັງໝົດ. ນີ້ແມ່ນຄືກັນກັບ -c ແຕ່ຍັງເອົາອອກ
"ໃຊ້ AutoLoader" ຂໍ້ຄວາມຈາກໄຟລ໌ .pm.

-B, -- ລຸ້ນເບຕ້າ
ໃຊ້ໝາຍເລກເວີຊັນຮູບແບບ alpha/beta. ເຮັດໃຫ້ໝາຍເລກເວີຊັນເປັນ "0.00_01" ເວັ້ນເສຍແຕ່
-v ຖືກກໍານົດ.

-C, --omit-ການ​ປ່ຽນ​ແປງ​
ຍົກເລີກການສ້າງ ການປ່ຽນແປງ ໄຟລ໌, ແລະເພີ່ມພາກສ່ວນປະຫວັດສາດໃສ່ແມ່ແບບ POD.

-F, --cpp-ທຸງ=addflags
ທຸງເພີ່ມເຕີມເພື່ອລະບຸໃຫ້ກັບ C preprocessor ເມື່ອສະແກນ header ສໍາລັບຟັງຊັນ
ຖະແຫຼງການ. ຂຽນທາງເລືອກເຫຼົ່ານີ້ຢູ່ໃນການຜະລິດ Makefile.PL ເຊັ່ນດຽວກັນ.

-M, --func-ຫນ້າກາກ=ປົກກະຕິ ການສະແດງອອກ
ເລືອກຟັງຊັນ/ມະຫາພາກເພື່ອປະມວນຜົນ.

-O, --ຂຽນທັບ-ຕົກລົງ
ອະ​ນຸ​ຍາດ​ໃຫ້​ລາຍ​ການ​ສ່ວນ​ຂະ​ຫຍາຍ​ທີ່​ມີ​ຢູ່​ກ່ອນ​ແລ້ວ​ທີ່​ຈະ​ຂຽນ​ທັບ​.

-P, --omit-pod
ຍົກເລີກພາກສ່ວນ POD stub ທີ່ສ້າງຂຶ້ນອັດຕະໂນມັດ.

-X, --omit-XS
ຍົກເລີກສ່ວນ XS. ໃຊ້ເພື່ອສ້າງໂມດູນ Perl ອັນບໍລິສຸດ skeleton. "-c" ແລະ "-f" ແມ່ນ
ເປີດໃຊ້ໂດຍທາງອ້ອມ.

-a, --gen-accessors
ສ້າງວິທີການເຂົ້າເຖິງສໍາລັບແຕ່ລະອົງປະກອບຂອງໂຄງສ້າງແລະສະຫະພັນ. ສ້າງຂຶ້ນ
ວິທີການຖືກຕັ້ງຊື່ຕາມຊື່ອົງປະກອບ; ຈະກັບຄືນມູນຄ່າປັດຈຸບັນຂອງ
ອົງປະກອບຖ້າຫາກວ່າເອີ້ນວ່າໂດຍບໍ່ມີການໂຕ້ຖຽງເພີ່ມເຕີມ; ແລະຈະກໍານົດອົງປະກອບເປັນ
ຄ່າທີ່ສະໜອງໃຫ້ (ແລະສົ່ງຄືນຄ່າໃໝ່) ຖ້າຖືກເອີ້ນດ້ວຍການໂຕ້ແຍ້ງເພີ່ມເຕີມ.
ໂຄງສ້າງທີ່ຝັງຕົວແລະສະຫະພັນຖືກສົ່ງຄືນເປັນຕົວຊີ້ແທນທີ່ຈະສົມບູນ
ໂຄງ​ປະ​ກອບ​ການ​, ເພື່ອ​ສະ​ດວກ​ການ​ໂທ​ລະ​ບົບ​ຕ່ອງ​ໂສ້​.

ວິທີການເຫຼົ່ານີ້ທັງຫມົດນໍາໃຊ້ກັບປະເພດ Ptr ສໍາລັບໂຄງສ້າງ; ນອກ​ຈາກ​ນັ້ນ​ສອງ​ວິ​ທີ​ການ​
ຖືກສ້າງຂຶ້ນສໍາລັບປະເພດໂຄງສ້າງຂອງມັນເອງ, "_to_ptr" ເຊິ່ງສົ່ງຄືນປະເພດ Ptr
ຊີ້ໃຫ້ເຫັນໂຄງສ້າງດຽວກັນ, ແລະວິທີການ "ໃຫມ່" ເພື່ອສ້າງແລະກັບຄືນໃຫມ່
ໂຄງປະກອບການ, ເລີ່ມຕົ້ນເປັນສູນ.

-b, --compat-version=ສະບັບພາສາ
ສ້າງໄຟລ໌ .pm ທີ່ເຂົ້າກັນໄດ້ກັບເວີຊັນ perl ທີ່ລະບຸໄວ້.

ສໍາລັບລຸ້ນ < 5.6.0, ການປ່ຽນແປງແມ່ນ.
- ບໍ່ໃຊ້ 'ຂອງພວກເຮົາ' (ໃຊ້ 'ໃຊ້ vars' ແທນ)
- ບໍ່​ມີ 'ຄໍາ​ເຕືອນ​ການ​ນໍາ​ໃຊ້​'

ການລະບຸເວີຊັນທີ່ເຂົ້າກັນໄດ້ສູງກວ່າເວີຊັນຂອງ perl ທີ່ທ່ານກຳລັງໃຊ້
ແລ່ນ h2xs ຈະບໍ່ມີຜົນກະທົບ. ຖ້າ h2xs ທີ່ບໍ່ລະບຸໄວ້ຈະເປັນຄ່າເລີ່ມຕົ້ນທີ່ຈະເຂົ້າກັນໄດ້
ສະບັບຂອງ perl ທີ່ທ່ານກໍາລັງໃຊ້ເພື່ອດໍາເນີນການ h2xs.

-c, --omit-ຄົງທີ່
ຍົກເລີກ "ຄົງທີ່()" ຈາກໄຟລ໌ .xs ແລະ "AUTOLOAD" ສະເພາະທີ່ສອດຄ້ອງກັນຈາກ
ໄຟລ໌ .pm.

-d, -- debugging
ເປີດການດີບັກຂໍ້ຄວາມ.

-e, --omit-enums=[ປົກກະຕິ ການສະແດງອອກ]
If ປົກກະຕິ ການສະແດງອອກ ບໍ່ໄດ້ຖືກມອບໃຫ້, ໃຫ້ຂ້າມຄ່າຄົງທີ່ທັງໝົດທີ່ຖືກກໍານົດໄວ້ໃນ C
ການນັບເລກ. ຖ້າບໍ່ດັ່ງນັ້ນໃຫ້ຂ້າມພຽງແຕ່ຄ່າຄົງທີ່ທີ່ຖືກກໍານົດໄວ້ໃນ enum ທີ່
ຊື່ກົງກັນ ປົກກະຕິ ການສະແດງອອກ.

ນັບຕັ້ງແຕ່ ປົກກະຕິ ການສະແດງອອກ ເປັນທາງເລືອກ, ໃຫ້ແນ່ໃຈວ່າສະຫຼັບນີ້ແມ່ນປະຕິບັດຕາມໂດຍຢູ່ທີ່
ຢ່າງ ຫນ້ອຍ ຫນຶ່ງ ສະ ຫຼັບ ອື່ນໆ ຖ້າ ຫາກ ວ່າ ທ່ານ omit ປົກກະຕິ ການສະແດງອອກ ແລະມີບາງການໂຕ້ຖຽງທີ່ຍັງຄ້າງຢູ່
ເຊັ່ນຊື່ header-file. ອັນນີ້ບໍ່ເປັນຫຍັງ:

h2xs -e -n Module::Foo foo.h

ອັນນີ້ບໍ່ເປັນຫຍັງ:

h2xs -n ໂມດູນ::Foo -e foo.h

ໃນສຸດທ້າຍ, foo.h ຖືກປະຕິບັດເປັນ ປົກກະຕິ ການສະແດງອອກ.

-f, --ກຳລັງ
ອະນຸຍາດໃຫ້ສ້າງສ່ວນຂະຫຍາຍສໍາລັບ header ເຖິງແມ່ນວ່າບໍ່ພົບ header ນັ້ນ
ມາດຕະຖານປະກອບມີໄດເລກະທໍລີ.

-g, -- ໂລກ
ລວມເອົາລະຫັດສໍາລັບການເກັບຮັກສາຂໍ້ມູນຄົງທີ່ຢ່າງປອດໄພໃນໄຟລ໌ .xs. ສ່ວນຂະຫຍາຍທີ່ບໍ່ມີ
ການນໍາໃຊ້ຂໍ້ມູນສະຖິດສາມາດລະເລີຍທາງເລືອກນີ້.

-h, -?, - ຊ່ວຍ
ພິມການນໍາໃຊ້, ການຊ່ວຍເຫຼືອແລະສະບັບສໍາລັບ h2xs ນີ້ແລະອອກ.

-k, --omit-const-func
ສໍາລັບອາກິວເມັນຟັງຊັນປະກາດເປັນ "const", ຍົກເລີກຄຸນສົມບັດ const ໃນທີ່ສ້າງຂຶ້ນ
ລະຫັດ XS.

-m, --gen-tied-var
ທົດລອງ: ສໍາລັບແຕ່ລະຕົວແປທີ່ປະກາດໄວ້ໃນ header file(s), declar a perl
ຕົວແປຂອງຊື່ດຽວກັນທີ່ magically tied ກັບຕົວແປ C.

-n, --ຊື່=module_name
ລະບຸຊື່ທີ່ຈະໃຊ້ສໍາລັບສ່ວນຂະຫຍາຍເຊັ່ນ -n RPC::DCE

-o, --opaque-re=ປົກກະຕິ ການສະແດງອອກ
ໃຊ້ປະເພດຂໍ້ມູນ "opaque" ສໍາລັບປະເພດ C ທີ່ຈັບຄູ່ໂດຍສະແດງອອກປົກກະຕິ, ເຖິງແມ່ນວ່າ
ປະເພດເຫຼົ່ານີ້ແມ່ນ "typedef" - ທຽບເທົ່າກັບປະເພດຈາກ typemap. ບໍ່ຄວນໃຊ້
ໂດຍບໍ່ມີການ -x.

ນີ້ອາດຈະເປັນປະໂຫຍດນັບຕັ້ງແຕ່, ເວົ້າວ່າ, ປະເພດທີ່ເປັນ "typedef" - ເທົ່າກັບຈໍານວນເຕັມອາດຈະ
ເປັນຕົວແທນຂອງ handles ທີ່ກ່ຽວຂ້ອງກັບ OS, ແລະຫນຶ່ງອາດຈະຕ້ອງການທີ່ຈະເຮັດວຽກກັບ handles ເຫຼົ່ານີ້ໃນ OO-way,
ຄືກັບ "$handle->do_something()". ໃຊ້ "-o ." ຖ້າທ່ານຕ້ອງການຈັດການທັງຫມົດ
"typedef"ed ປະເພດເປັນປະເພດ opaque.

ປະເພດການຈັບຄູ່ແມ່ນຖືກລ້າງຂາວ (ຍົກເວັ້ນເຄື່ອງໝາຍຈຸດ, ທີ່ບໍ່ມີບ່ອນຫວ່າງກ່ອນ
ພວກມັນ, ແລະຫຼາຍ "*" ທີ່ບໍ່ມີຊ່ອງຫວ່າງລະຫວ່າງພວກມັນ).

-p, --remove-prefix=ຄຳ ນຳ ໜ້າ
ລະບຸຄໍານໍາຫນ້າທີ່ຄວນຈະຖືກໂຍກຍ້າຍອອກຈາກຊື່ຟັງຊັນ Perl, ຕົວຢ່າງ:
-p sec_rgy_ ນີ້ຕັ້ງຄ່າ XS PREFIX ຄໍາສໍາຄັນແລະເອົາຄໍານໍາຫນ້າອອກຈາກຫນ້າທີ່
ທີ່ຖືກໂຫລດອັດຕະໂນມັດຜ່ານກົນໄກ "ຄົງທີ່ ()".

-s, --const-subs=ຍ່ອຍ1,ຍ່ອຍ2
ສ້າງ perl subroutine ສໍາລັບ macros ທີ່ກໍານົດໄວ້ແທນທີ່ຈະ autoload ກັບ
ຄົງທີ່() ປະຈຳຍ່ອຍ. ມະຫາພາກເຫຼົ່ານີ້ແມ່ນສົມມຸດວ່າມີປະເພດຜົນຕອບແທນຂອງ char *,
ຕົວຢ່າງ: -s sec_rgy_wildcard_name,sec_rgy_wildcard_sid.

-t, --default-type=ປະເພດ
ລະບຸປະເພດພາຍໃນທີ່ ຄົງທີ່() ກົນໄກການນໍາໃຊ້ສໍາລັບມະຫາພາກ. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ IV (ຈຳນວນເຕັມທີ່ລົງລາຍເຊັນ). ປະຈຸບັນພົບມາໂຄຣທັງໝົດໃນລະຫວ່າງການສະແກນສ່ວນຫົວ
ຂະບວນການຈະຖືກສົມມຸດວ່າມີປະເພດນີ້. ຮຸ່ນ "h2xs" ໃນອະນາຄົດອາດຈະໄດ້ຮັບ
ຄວາມສາມາດໃນການຄາດເດົາການສຶກສາ.

--use-new-tests
ເມື່ອ​ໃດ​ --compat-version (-b) ປະຈຸບັນການທົດສອບທີ່ສ້າງຂຶ້ນຈະໃຊ້ "Test:: More"
ແທນທີ່ຈະ "ທົດສອບ" ເຊິ່ງເປັນຄ່າເລີ່ມຕົ້ນຂອງເວີຊັນກ່ອນ 5.6.2. "ທົດສອບ::ເພີ່ມເຕີມ" ຈະ
ຈະຖືກເພີ່ມໃສ່ PREREQ_PM ໃນ "Makefile.PL".

--use-old-tests
ຈະບັງຄັບການສ້າງລະຫັດການທົດສອບທີ່ໃຊ້ໂມດູນ "ທົດສອບ" ເກົ່າ.

--ຂ້າມ-ຜູ້ສົ່ງອອກ
ຢ່າໃຊ້ "ຜູ້ສົ່ງອອກ" ແລະ/ຫຼື ສົ່ງອອກສັນຍາລັກໃດໆ.

--skip-ppport
ຫ້າມໃຊ້ "Devel::PPPort": ບໍ່ມີການນຳໄປໃຊ້ກັບເວີຊັນເກົ່າ.

--skip-autoloader
ຢ່າໃຊ້ໂມດູນ "AutoLoader"; ແຕ່ຮັກສາ ຄົງທີ່() function ແລະ "ຍ່ອຍ
AUTOLOAD" ສໍາລັບຄ່າຄົງທີ່.

--ຂ້າມ-ເຄັ່ງຄັດ
ຢ່າໃຊ້ Pragma "ເຄັ່ງຄັດ".

--skip-ເຕືອນ
ຢ່າໃຊ້ Pragma "ຄໍາເຕືອນ".

-v, - ການປ່ຽນແປງ=ສະບັບພາສາ
ລະບຸໝາຍເລກເວີຊັນສຳລັບສ່ວນຂະຫຍາຍນີ້. ໝາຍເລກລຸ້ນນີ້ຖືກເພີ່ມໃສ່
ແມ່ແບບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.01, ຫຼື 0.00_01 ຖ້າ "-B" ຖືກລະບຸ. ສະບັບ
ທີ່ລະບຸຄວນຈະເປັນຕົວເລກ.

-x, --autogen-xsubs
ສ້າງ XSUBs ໂດຍອັດຕະໂນມັດໂດຍອີງໃສ່ການປະກາດຟັງຊັນໃນໄຟລ໌ສ່ວນຫົວ. ໄດ້
ຊຸດ "C:: Scan" ຄວນຖືກຕິດຕັ້ງ. ຖ້າຕົວເລືອກນີ້ຖືກລະບຸ, ຊື່ຂອງ
ໄຟລ໌ສ່ວນຫົວອາດຈະຄ້າຍຄື "NAME1,NAME2". ໃນກໍລະນີນີ້ NAME1 ຖືກໃຊ້ແທນ
ສະຕຣິງທີ່ລະບຸ, ແຕ່ XSUBs ຖືກປ່ອຍອອກມາພຽງແຕ່ສໍາລັບການປະກາດທີ່ລວມຢູ່ໃນໄຟລ໌
NAME2.

ໃຫ້ສັງເກດວ່າບາງປະເພດຂອງ argument / return-values ​​ສໍາລັບຟັງຊັນອາດຈະສົ່ງຜົນໃຫ້
XSUB-declarations/typemap-entries ທີ່ຕ້ອງການການແກ້ໄຂດ້ວຍມື. ສິ່ງດັ່ງກ່າວອາດຈະເປັນວັດຖຸທີ່
ບໍ່ສາມາດປ່ຽນຈາກ / ເປັນຕົວຊີ້ (ເຊັ່ນ "ຍາວຍາວ"), ຕົວຊີ້ໄປຫາຫນ້າທີ່, ຫຼື
arrays. ເບິ່ງພາກສ່ວນ "LIMITATIONS ຂອງ -x".

ຕົວຢ່າງ


# ພຶດຕິກໍາເລີ່ມຕົ້ນ, ການຂະຫຍາຍແມ່ນ Rusers
h2xs rpcsvc/rurs

# ຄືກັນ, ແຕ່ການຂະຫຍາຍແມ່ນ RUSERS
h2xs -n RUSERS rpcsvc/rusers

# ສ່ວນຂະຫຍາຍແມ່ນ rpcsvc::rusers. ຍັງພົບເຫັນ
h2xs rpcsvc::rusers

# ສ່ວນຂະຫຍາຍແມ່ນ ONC::RPC. ຍັງພົບເຫັນ
h2xs -n ONC::RPC rpcsvc/rusers

# ໂດຍບໍ່ມີການຄົງທີ່ () ຫຼື AUTOLOAD
h2xs -c rpcsvc/rusers

# ສ້າງແມ່ແບບສໍາລັບສ່ວນຂະຫຍາຍທີ່ມີຊື່ RPC
h2xs -cfn RPC

# ສ່ວນຂະຫຍາຍແມ່ນ ONC::RPC.
h2xs -cfn ONC::RPC

# ສ່ວນຂະຫຍາຍແມ່ນໂມດູນ Perl ບໍລິສຸດທີ່ບໍ່ມີລະຫັດ XS.
h2xs -X ຂອງຂ້ອຍ::ໂມດູນ

# ສ່ວນຂະຫຍາຍແມ່ນ Lib::Foo ທີ່ເຮັດວຽກຢ່າງຫນ້ອຍກັບ Perl5.005_03.
# ຄົງທີ່ຖືກສ້າງຂື້ນເພື່ອ #defines ທັງໝົດ ແລະ enums h2xs ສາມາດຊອກຫາໄດ້
# ໃນ foo.h.
h2xs -b 5.5.3 -n Lib::Foo foo.h

# ສ່ວນຂະຫຍາຍແມ່ນ Lib::Foo ທີ່ເຮັດວຽກຢ່າງຫນ້ອຍກັບ Perl5.005_03.
# ຄົງທີ່ຖືກສ້າງຂຶ້ນສໍາລັບທຸກ #defines ແຕ່ພຽງແຕ່ສໍາລັບ enums
# ຊື່ທີ່ບໍ່ໄດ້ຂຶ້ນຕົ້ນດ້ວຍ 'bar_'.
h2xs -b 5.5.3 -e '^bar_' -n Lib::Foo foo.h

# Makefile.PL ຈະຊອກຫາຫ້ອງສະຫມຸດ -lrpc ໃນ
# ໄດເລກະທໍລີເພີ່ມເຕີມ /opt/net/lib
h2xs rpcsvc/rusers -L/opt/net/lib -lrpc

# ສ່ວນຂະຫຍາຍແມ່ນ DCE::rgynbase
# ຄຳນຳໜ້າ "sec_rgy_" ຖືກຖິ້ມຈາກຊື່ຟັງຊັນ perl
h2xs -n DCE::rgynbase -p sec_rgy_ dce/rgynbase

# ສ່ວນຂະຫຍາຍແມ່ນ DCE::rgynbase
# ຄຳນຳໜ້າ "sec_rgy_" ຖືກຖິ້ມຈາກຊື່ຟັງຊັນ perl
# routines ຍ່ອຍແມ່ນຖືກສ້າງຂຶ້ນສໍາລັບ sec_rgy_wildcard_name ແລະ
# sec_rgy_wildcard_sid
h2xs -n DCE::rgynbase -p sec_rgy_ \
-s sec_rgy_wildcard_name,sec_rgy_wildcard_sid dce/rgynbase

# ເຮັດ XS ໂດຍບໍ່ມີການກໍານົດໃນ perl.h, ແຕ່ມີການປະກາດຟັງຊັນ
# ເຫັນໄດ້ຈາກ perl.h. ຊື່ຂອງສ່ວນຂະຫຍາຍແມ່ນ perl1.
# ເມື່ອສະແກນ perl.h, ກຳນົດ -DEXT=extern -DdEXT= -DINIT(x)=
# ເພີ່ມເຕີມ backslashes ຂ້າງລຸ່ມນີ້ເນື່ອງຈາກວ່າ string ຖືກສົ່ງກັບ shell.
# ໃຫ້ສັງເກດວ່າໄດເລກະທໍລີທີ່ມີໄຟລ໌ສ່ວນຫົວ perl ຈະ
# ຈະຖືກເພີ່ມໂດຍອັດຕະໂນມັດເພື່ອປະກອບມີເສັ້ນທາງ.
h2xs -xAn perl1 -F "-DEXT=extern -DdEXT= -DINIT\(x\)=" perl.h

# ຄືກັນກັບການປະກາດຟັງຊັນໃນ proto.h ທີ່ເຫັນໄດ້ຈາກ perl.h.
h2xs -xAn perl2 perl.h,proto.h

# ຄືກັນແຕ່ເລືອກຟັງຊັນທີ່ກົງກັບ /^av_/
h2xs -M '^av_' -xAn perl2 perl.h,proto.h

# ຄືກັນແຕ່ປະຕິບັດ SV* ອື່ນໆເປັນປະເພດ "opaque".
h2xs -o '^[S]V \*$' -M '^av_' -xAn perl2 perl.h,proto.h

ການຂະຫຍາຍຕົວ ອີງ on .h ແລະ .c ໄຟ
ສົມ​ມຸດ​ວ່າ​ທ່ານ​ມີ​ໄຟລ​໌ C ບາງ​ປະ​ຕິ​ບັດ​ບາງ​ການ​ທໍາ​ງານ​, ແລະ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​
ໄຟລ໌ຫົວ. ວິທີການສ້າງສ່ວນຂະຫຍາຍທີ່ເຮັດໃຫ້ຫນ້າທີ່ນີ້ສາມາດເຂົ້າເຖິງໄດ້ໃນ
Perl? ຕົວຢ່າງຂ້າງລຸ່ມນີ້ສົມມຸດວ່າໄຟລ໌ຫົວແມ່ນ interface_simple.h ແລະ
interface_hairy.h, ແລະທ່ານຕ້ອງການໂມດູນ perl ຖືກຕັ້ງຊື່ເປັນ "Ext::Ension". ຖ້າ​ເຈົ້າ​ຕ້ອງ​ການ
ບາງຄໍາສັ່ງ preprocessor ແລະ / ຫຼືການເຊື່ອມຕໍ່ກັບຫ້ອງສະຫມຸດພາຍນອກ, ເບິ່ງທຸງ "-F",
"-L" ແລະ "-l" ໃນ "ຕົວເລືອກ".

ຊອກຫາຊື່ໄດເລກະທໍລີ
ເລີ່ມຕົ້ນດ້ວຍການແລ່ນ dummy ຂອງ h2xs:

h2xs -Afn Ext::Ension

ຈຸດປະສົງດຽວຂອງຂັ້ນຕອນນີ້ແມ່ນເພື່ອສ້າງໄດເລກະທໍລີທີ່ຈໍາເປັນ, ແລະແຈ້ງໃຫ້ເຈົ້າຮູ້
ຊື່ຂອງໄດເລກະທໍລີເຫຼົ່ານີ້. ຈາກຜົນຜະລິດທີ່ທ່ານສາມາດເຫັນໄດ້ວ່າໄດເລກະທໍລີສໍາລັບ
ການຂະຫຍາຍແມ່ນ Ext/Ension.

ສຳເນົາໄຟລ໌ C
ສຳເນົາໄຟລ໌ສ່ວນຫົວ ແລະໄຟລ໌ C ຂອງທ່ານໃສ່ບັນຊີລາຍການນີ້ Ext/Ension.

ສ້າງສ່ວນຂະຫຍາຍ
ແລ່ນ h2xs, ຂຽນທັບໄຟລ໌ທີ່ສ້າງຂຶ້ນອັດຕະໂນມັດເກົ່າ:

h2xs -Oxan Ext::Ension interface_simple.h interface_hairy.h

h2xs ຊອກຫາໄຟລ໌ສ່ວນຫົວ ຫຼັງຈາກ ການປ່ຽນແປງໄປຫາໄດເລກະທໍລີຂະຫຍາຍ, ດັ່ງນັ້ນມັນຈະພົບເຫັນ
ໄຟລ໌ຫົວຂອງທ່ານຕົກລົງ.

ຮວບຮວມແລະທົດສອບ
ຕາມປົກກະຕິ, ແລ່ນ

cd Ext/Ension
perl Makefile.PL
ເຮັດໃຫ້ຫ່າງໄກ
ເຮັດໃຫ້
ເຮັດ​ໃຫ້​ການ​ທົດ​ສອບ​

ຄໍາແນະນໍາ
ມັນເປັນສິ່ງສໍາຄັນທີ່ຈະເຮັດ "ເຮັດໃຫ້ຫ່າງໄກ" ໄວເທົ່າທີ່ຈະໄວໄດ້. ວິທີນີ້ເຈົ້າສາມາດໄດ້ຢ່າງງ່າຍດາຍ
ລວມ(1​) ການ​ປ່ຽນ​ແປງ​ຂອງ​ທ່ານ​ກັບ​ໄຟລ​໌ autogenerated ຖ້າ​ຫາກ​ວ່າ​ທ່ານ​ຕັດ​ສິນ​ໃຈ​ທີ່​ຈະ​ແກ້​ໄຂ​ໄຟລ​໌ ".h​" ຂອງ​ທ່ານ​ແລະ​
rerun h2xs.

ຢ່າລືມແກ້ໄຂເອກະສານທີ່ສ້າງຂຶ້ນ pm ຍື່ນ.

ພິ​ຈາ​ລະ​ນາ​ໄຟລ​໌​ທີ່​ຜະ​ລິດ​ຕະ​ໂນ​ມັດ​ເປັນ skeletons ເທົ່າ​ນັ້ນ​, ທ່ານ​ອາດ​ຈະ​ສ້າງ​ການ​ໂຕ້​ຕອບ​ທີ່​ດີກ​ວ່າ​
ຫຼາຍກວ່າສິ່ງທີ່ h2xs ສາມາດຄາດເດົາໄດ້.

ພິຈາລະນາພາກນີ້ເປັນຄໍາແນະນໍາເທົ່ານັ້ນ, ບາງທາງເລືອກອື່ນຂອງ h2xs ອາດຈະເຫມາະສົມກັບທີ່ດີກວ່າ
ຄວາມຕ້ອງການຂອງທ່ານ.

ENVIRONMENT


ບໍ່ມີຕົວແປສະພາບແວດລ້ອມໄດ້ຖືກນໍາໃຊ້.

ໃຊ້ h2xs ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net


ເຊີບເວີ ແລະສະຖານີເຮັດວຽກຟຣີ

ດາວໂຫຼດແອັບ Windows ແລະ Linux

Linux ຄຳ ສັ່ງ

Ad