ນີ້ແມ່ນຄໍາສັ່ງ h2xml ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
h2xml - ປ່ຽນໄຟລ໌ header ເປັນຕົວກາງ XML
xml2py - ປ່ຽນຕົວກາງ XML ເປັນ Python ctypes interface
ສະຫຼຸບສັງລວມ
h2xml ລວມໄຟລ໌ ... [ທາງເລືອກໃນການ] -o outputxmlfile
xml2py xmlfile ... [ທາງເລືອກໃນການ] -o outputpyfile
ລາຍລະອຽດ
ctypeslib ເປັນເຄື່ອງສ້າງລະຫັດ Python ທີ່ສາມາດປ່ຽນໄຟລ໌ຫົວ C ເປັນໄຟລ໌ xml
(ໃຊ້ gccxml), ແລະຫຼັງຈາກນັ້ນປ່ຽນ xmlfiles ເຂົ້າໄປໃນໂມດູນ Python ທີ່ກໍານົດ ctypes.
ການໂຕ້ຕອບກັບຫ້ອງສະຫມຸດ C ທີ່ສອດຄ້ອງກັນ.
Ctypeslib ບໍ່ແມ່ນ ctypes. Ctypes ແມ່ນລວມຢູ່ໃນ Python 2.5+ ແລະເປັນ add-on ສໍາລັບຕ່ໍາ
ສະບັບ, ໃນຂະນະທີ່ ctypeslib ເປັນ add-on ທີ່ຮູ້ຈັກຫນ້ອຍທີ່ຂຽນໂດຍຜູ້ຂຽນ ctypes. ຖ້າເຈົ້າ
ໃຊ້ ctypes ຫຼາຍແລະເມື່ອຍກັບການຕັ້ງຄ່າ argtypes ແລະ restype ຂອງຫນ້າທີ່ເອີ້ນວ່າ,
ທ່ານຄວນເບິ່ງ ctypeslib. Ctypeslib ຍັງສາມາດຕັ້ງຄ່າປະເພດຂໍ້ມູນແລະໂຄງສ້າງຈາກ
ໄຟລ໌ຫົວ C ອັດຕະໂນມັດ.
h2xml ແລະ xml2py ແມ່ນສະຄຣິບສ່ວນຕິດຕໍ່ຜູ້ໃຊ້ກັບ ctypeslib. h2xml ແປງຫົວ C
ໄຟລ໌ເຂົ້າໄປໃນຕົວກາງ xml (ການນໍາໃຊ້ gccxml) ແລະ xml2py ປ່ຽນຕົວກາງເຫຼົ່ານີ້ເປັນ
ໄຟລ໌ Python. ໃນຕໍາ່ສຸດທີ່, ທ່ານສາມາດໄດ້ຮັບການກໍ່ສ້າງອັດຕະໂນມັດຂອງປະເພດ C
(ໂຄງສ້າງ, ແລະອື່ນໆ) ໃນຄໍານິຍາມ ctypes. ດ້ວຍທາງເລືອກພິເສດ, ນິຍາມມະຫາພາກສາມາດເປັນ
ຂະຫຍາຍແລະໄຟລ໌ Python ຜົນຜະລິດສາມາດເຊື່ອມຕໍ່ອັດຕະໂນມັດ (ໃຊ້ ctypes) ກັບ
ຫ້ອງສະຫມຸດ C ທີ່ສອດຄ້ອງກັນ.
ຕົວຢ່າງສັ້ນໆແມ່ນ:
h2xml header.h -o out_c.xml
xml2py out_c.xml -o out_c.py
ເພື່ອໃຫ້ໄດ້ຮັບສັນຍາລັກ preprocessor, ທ່ານຕ້ອງໃຊ້ -c ປັກທຸງໃສ່ h2xml. ເພື່ອເຊື່ອມຕໍ່ອັດຕະໂນມັດ
ໄປຫາຫ້ອງສະຫມຸດ C ຜ່ານ ctypes, ເຈົ້າຕ້ອງຜ່ານຫ້ອງສະຫມຸດທີ່ກ່ຽວຂ້ອງ xml2py ກັບ -l
library.so.
OPTIONS
h2xml ຕົວເລືອກ:
-h, - ຊ່ວຍ
ສະແດງຂໍ້ຄວາມຊ່ວຍເຫຼືອສັ້ນໆ
-q, --ງຽບ
-D NAME [=VALUE]
ມະຫາພາກເພື່ອກໍານົດ
-U NAME
ມະຫາພາກເພື່ອຍົກເລີກການກຳນົດ
-I ທິດທາງ
ເພີ່ມເຕີມປະກອບມີໄດເລກະທໍລີ
-o XMLFILE
ຊື່ໄຟລ໌ຜົນຜະລິດ XML
-c, --cpp-ສັນຍາລັກ
ພະຍາຍາມຊອກຫາ #define ສັນຍາລັກ - ນີ້ອາດຈະເຮັດໃຫ້ compiler ຜິດພາດ, ສະນັ້ນມັນປິດໂດຍ
Default
-k ຢ່າລຶບໄຟລ໌ຊົ່ວຄາວທີ່ສ້າງຂຶ້ນ (ເປັນປະໂຫຍດສໍາລັບການຊອກຫາບັນຫາ)
xml2py ຕົວເລືອກ:
-h, - ຊ່ວຍ
ສະແດງຂໍ້ຄວາມຊ່ວຍເຫຼືອນີ້ ແລະອອກ
-c ປະກອບມີສະຖານທີ່ໄຟລ໌ແຫຼ່ງໃນຄໍາເຫັນ
-d ປະກອບມີ docstrings ທີ່ມີຕົ້ນແບບ C ແລະສະຖານທີ່ໄຟລ໌ແຫຼ່ງ
-k ປະເພດ
ປະເພດຂອງຄໍາອະທິບາຍປະເພດທີ່ຈະປະກອບມີ: d = #defines, e = enumerations, f =
functions, s = ໂຄງສ້າງ, t = typedefs
-l dlls
ຫ້ອງສະຫມຸດເພື່ອຄົ້ນຫາຫນ້າທີ່ສົ່ງອອກ
-o OUTPUT
output filename (ຖ້າຫາກວ່າບໍ່ໄດ້ລະບຸໄວ້, ຜົນຜະລິດມາດຕະຖານຈະຖືກນໍາໃຊ້)
-r ການສະແດງອອກ
ການສະແດງອອກປົກກະຕິສໍາລັບສັນຍາລັກທີ່ຈະປະກອບມີ (ຖ້າບໍ່ແມ່ນສັນຍາລັກຫຼື
ສະແດງອອກແມ່ນໄດ້ລະບຸໄວ້, ທຸກສິ່ງທຸກຢ່າງຈະໄດ້ຮັບການລວມ)
-s SYMBOL
ສັນຍາລັກທີ່ຈະປະກອບມີ (ຖ້າຫາກວ່າສັນຍາລັກຫຼືການສະແດງອອກບໍ່ແມ່ນ
ທີ່ລະບຸໄວ້, ທຸກສິ່ງທຸກຢ່າງຈະໄດ້ຮັບການລວມ)
-v ຜົນຜະລິດ verbose
-w ເພີ່ມ windows dlls ມາດຕະຖານທັງຫມົດເຂົ້າໃນບັນຊີລາຍຊື່ dlls ທີ່ຄົ້ນຫາ
-m ໂມດູນ
ໂມດູນ Python ທີ່ມີສັນຍາລັກທີ່ຈະຖືກນໍາເຂົ້າແທນ
ຜະລິດ
-- ໂຫຼດລ່ວງໜ້າ=Dll
dlls ທີ່ຈະໂຫລດກ່ອນຄົນອື່ນທັງຫມົດ (ເພື່ອແກ້ໄຂສັນຍາລັກ)
ຕົວຢ່າງ
ກະລຸນາເບິ່ງ /usr/share/doc/python-ctypeslib/examples.Debian ສໍາລັບຕົວຢ່າງແລະຄໍາອະທິບາຍ.
ໃຊ້ h2xml ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net