ນີ້ແມ່ນຄໍາສັ່ງ llvm-ar ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
llvm-ar - ຄັງເກັບ LLVM
ສະຫຼຸບສັງລວມ
llvm-ar [-]{dmpqrtx}[Rabfikou] [relpos] [ນັບ] [ໄຟລ໌...]
ລາຍລະອຽດ
ໄດ້ llvm-ar ຄໍາສັ່ງແມ່ນຄ້າຍຄືກັນກັບຜົນປະໂຫຍດຂອງ Unix ທົ່ວໄປ, ar. ມັນເກັບໄຟລ໌ຫຼາຍອັນ
ເຂົ້າກັນເປັນໄຟລ໌ດຽວ. ຈຸດປະສົງສໍາລັບການນີ້ແມ່ນເພື່ອຜະລິດຫ້ອງສະຫມຸດຮວບຮວມໂດຍ LLVM
bitcode ທີ່ສາມາດເຊື່ອມຕໍ່ເຂົ້າໃນໂຄງການ LLVM. ແນວໃດກໍ່ຕາມ, ຄັງເກັບມ້ຽນສາມາດບັນຈຸປະເພດໃດກໍ່ໄດ້
ຂອງໄຟລ໌. ໂດຍຄ່າເລີ່ມຕົ້ນ, llvm-ar ສ້າງຕາຕະລາງສັນຍາລັກທີ່ເຮັດໃຫ້ການເຊື່ອມຕໍ່ໄວຂຶ້ນເພາະວ່າ
ພຽງແຕ່ຕາຕະລາງສັນຍາລັກຕ້ອງໄດ້ຮັບການປຶກສາຫາລື, ບໍ່ແມ່ນແຕ່ລະສະມາຊິກໄຟລ໌ສ່ວນບຸກຄົນຂອງ
ຮວບຮວມ.
ໄດ້ llvm-ar ຄໍາສັ່ງສາມາດຖືກນໍາໃຊ້ເພື່ອ ອ່ານ ໄຟລ໌ຈັດເກັບຮູບແບບ SVR4, GNU ແລະ BSD. ແນວໃດກໍ່ຕາມ,
ໃນປັດຈຸບັນມັນພຽງແຕ່ສາມາດຂຽນໃນຮູບແບບ GNU. ຖ້າການຈັດເກັບຮູບແບບ SVR4 ຫຼື BSD ຖືກໃຊ້
ກັບ r (ແທນທີ່) ຫຼື q (ການປັບປຸງດ່ວນ) ການດໍາເນີນງານ, ຮວບຮວມຈະໄດ້ຮັບການ reconstructed ໃນ
ຮູບແບບ GNU.
ນີ້ແມ່ນບ່ອນທີ່ llvm-ar ອອກຈາກທີ່ຜ່ານມາ ar ການປະຕິບັດ:
ສັນຍາລັກ ຕາຕະລາງ
ນັບຕັ້ງແຕ່ llvm-ar ສະຫນັບສະຫນູນໄຟລ໌ bitcode. ຕາຕະລາງສັນຍາລັກທີ່ມັນສ້າງແມ່ນຢູ່ໃນຮູບແບບ GNU ແລະ
ລວມມີທັງໄຟລ໌ຕົ້ນສະບັບ ແລະໄຟລ໌ bitcode.
Long ເສັ້ນທາງ
ປະຈຸບັນ llvm-ar ສາມາດອ່ານຊື່ໄຟລ໌ຍາວ GNU ແລະ BSD, ແຕ່ພຽງແຕ່ຂຽນແຟ້ມຈັດເກັບດ້ວຍ
ຮູບແບບ GNU.
OPTIONS
ທາງເລືອກໃນການ llvm-ar ແມ່ນເຂົ້າກັນໄດ້ກັບອື່ນໆ ar ການຈັດຕັ້ງປະຕິບັດ. ຢ່າງໃດກໍຕາມ, ມີ a
ຕົວປ່ຽນແປງຈໍານວນຫນ້ອຍ (R) ທີ່ບໍ່ໄດ້ພົບເຫັນຢູ່ໃນອື່ນໆ ar ການຈັດຕັ້ງປະຕິບັດ. ທາງເລືອກໃນການ llvm-ar
ລະບຸການດໍາເນີນງານຂັ້ນພື້ນຖານດຽວເພື່ອປະຕິບັດກ່ຽວກັບການເກັບຮັກສາ, ຄວາມຫຼາກຫຼາຍຂອງການປັບປຸງສໍາລັບການ
ການດໍາເນີນງານນັ້ນ, ຊື່ຂອງແຟ້ມຈັດເກັບ, ແລະບັນຊີລາຍຊື່ທາງເລືອກຂອງຊື່ໄຟລ໌. ເຫຼົ່ານີ້
ທາງເລືອກແມ່ນໃຊ້ເພື່ອກໍານົດວິທີການ llvm-ar ຄວນປະມວນຜົນໄຟລ໌ທີ່ເກັບໄວ້.
ການດໍາເນີນງານແລະການດັດແກ້ໄດ້ຖືກອະທິບາຍຢູ່ໃນພາກສ່ວນຂ້າງລຸ່ມນີ້. ຊຸດນ້ອຍສຸດຂອງ
ຕົວເລືອກແມ່ນຢ່າງໜ້ອຍໜຶ່ງຕົວປະຕິບັດການ ແລະຊື່ຂອງແຟ້ມຈັດເກັບ. ໂດຍປົກກະຕິການຈັດເກັບໄຟລ໌ສິ້ນສຸດ
ມີ .a suffix, ແຕ່ນີ້ບໍ່ຈໍາເປັນຕ້ອງ. ປະຕິບັດຕາມ archive-name ມາບັນຊີລາຍຊື່ຂອງ
ໄຟ ທີ່ຊີ້ບອກເຖິງສະມາຊິກສະເພາະຂອງບ່ອນເກັບມ້ຽນທີ່ຈະດໍາເນີນການ. ຖ້າ ໄຟ ທາງເລືອກ
ບໍ່ໄດ້ລະບຸໄວ້, ມັນໂດຍທົ່ວໄປຫມາຍຄວາມວ່າ "ບໍ່ມີ" ຫຼື "ທັງຫມົດ", ຂຶ້ນກັບ
ການປະຕິບັດງານ.
ການດໍາເນີນງານ
d
ລຶບໄຟລ໌ອອກຈາກແຟ້ມຈັດເກັບ. ບໍ່ມີຕົວແກ້ໄຂໃດໆທີ່ສາມາດໃຊ້ໄດ້ກັບການປະຕິບັດງານນີ້. ໄດ້
ໄຟ ຕົວເລືອກລະບຸວ່າສະມາຊິກໃດຄວນຖືກເອົາອອກຈາກແຟ້ມຈັດເກັບ. ມັນບໍ່ແມ່ນ
ຂໍ້ຜິດພາດຖ້າໄຟລ໌ທີ່ລະບຸບໍ່ປາກົດຢູ່ໃນບ່ອນເກັບມ້ຽນ. ຖ້າບໍ່ມີ ໄຟ ໄດ້ລະບຸໄວ້,
ແຟ້ມຈັດເກັບບໍ່ໄດ້ຖືກດັດແກ້.
m[abi]
ຍ້າຍໄຟລ໌ຈາກບ່ອນໜຶ່ງໃນແຟ້ມຈັດເກັບໄປຫາບ່ອນອື່ນ. ໄດ້ a, b, ແລະ i ນຳໃຊ້ຕົວແກ້ໄຂ
ຕໍ່ການດໍາເນີນງານນີ້. ໄດ້ ໄຟ ທັງຫມົດຈະຖືກຍ້າຍໄປສະຖານທີ່ໃຫ້ໂດຍການປັບປຸງແກ້ໄຂໄດ້.
ຖ້າບໍ່ມີຕົວແກ້ໄຂຖືກໃຊ້, ໄຟລ໌ຈະຖືກຍ້າຍໄປໃນຕອນທ້າຍຂອງບ່ອນເກັບມ້ຽນ. ຖ້າບໍ່ມີ
ໄຟ ຖືກລະບຸໄວ້, ແຟ້ມຈັດເກັບບໍ່ໄດ້ຖືກດັດແກ້.
p
ພິມໄຟລ໌ໄປຫາຜົນຜະລິດມາດຕະຖານ. ການດໍາເນີນງານນີ້ພຽງແຕ່ພິມໄດ້ ໄຟ ຊີ້ບອກເຖິງ
ຜົນຜະລິດມາດຕະຖານ. ຖ້າບໍ່ມີ ໄຟ ຖືກລະບຸໄວ້, ແຟ້ມຈັດເກັບທັງໝົດຈະຖືກພິມອອກ.
ການພິມໄຟລ໌ bitcode ແມ່ນບໍ່ຖືກຕ້ອງຕາມຄໍາແນະນໍາທີ່ເຂົາເຈົ້າອາດຈະສັບສົນກັບການຕັ້ງຄ່າ terminal ຂອງທ່ານ. ໄດ້
p ການດໍາເນີນງານບໍ່ເຄີຍດັດແປງການຈັດເກັບ.
q
ຕື່ມໄຟລ໌ໃສ່ທ້າຍບ່ອນເກັບມ້ຽນຢ່າງໄວວາ. ການດໍາເນີນງານນີ້ຢ່າງວ່ອງໄວເພີ່ມ ໄຟ
ໄປຫາບ່ອນເກັບມ້ຽນໂດຍບໍ່ມີການກວດສອບການຊໍ້າກັນທີ່ຄວນເອົາອອກກ່ອນ. ຖ້າບໍ່ມີ
ໄຟ ຖືກລະບຸໄວ້, ແຟ້ມຈັດເກັບບໍ່ໄດ້ຖືກດັດແກ້. ເນື່ອງຈາກວ່າວິທີການນັ້ນ llvm-ar
ກໍ່ສ້າງໄຟລ໌ຮວບຮວມ, ທີ່ຫນ້າສົງໄສຂອງມັນບໍ່ວ່າຈະເປັນ q ການດໍາເນີນງານແມ່ນໄວກ່ວາ
r ການປະຕິບັດງານ.
r[ອາບູ]
ແທນທີ່ຫຼືໃສ່ສະມາຊິກໄຟລ໌. ໄດ້ a, b, ແລະ u ຕົວແກ້ໄຂນຳໃຊ້ກັບການປະຕິບັດການນີ້.
ການປະຕິບັດນີ້ຈະທົດແທນທີ່ມີຢູ່ແລ້ວ ໄຟ ຫຼືໃສ່ພວກມັນໃນຕອນທ້າຍຂອງບ່ອນເກັບມ້ຽນຖ້າ
ພວກມັນບໍ່ມີຢູ່. ຖ້າບໍ່ມີ ໄຟ ຖືກລະບຸໄວ້, ແຟ້ມຈັດເກັບບໍ່ໄດ້ຖືກດັດແກ້.
t[v]
ພິມຕາຕະລາງເນື້ອໃນ. ໂດຍບໍ່ມີການດັດແປງໃດໆ, ການດໍາເນີນງານນີ້ພຽງແຕ່ພິມອອກ
ຊື່ຂອງສະມາຊິກກັບຜົນຜະລິດມາດຕະຖານ. ກັບ v ຕົວປັບປຸງແກ້ໄຂ, llvm-ar ຍັງພິມ
ອອກປະເພດໄຟລ໌ (B=bitcode, S=symbol ຕາຕະລາງ, blank = ໄຟລ໌ປົກກະຕິ), ຮູບແບບການອະນຸຍາດ,
ເຈົ້າຂອງແລະກຸ່ມ, ຂະຫນາດ, ແລະວັນທີ. ຖ້າມີ ໄຟ ຖືກກໍານົດ, ບັນຊີລາຍຊື່ແມ່ນ
ພຽງແຕ່ສໍາລັບໄຟລ໌ເຫຼົ່ານັ້ນ. ຖ້າບໍ່ມີ ໄຟ ຖືກກໍານົດ, ຕາຕະລາງເນື້ອໃນສໍາລັບທັງຫມົດ
ຮວບຮວມຖືກພິມອອກ.
x[oP]
ສະກັດສະມາຊິກແຟ້ມຈັດເກັບກັບຄືນໄປຫາໄຟລ໌. ໄດ້ o ຕົວແກ້ໄຂໃຊ້ກັບການປະຕິບັດງານນີ້. ນີ້
ການດໍາເນີນງານດຶງຂໍ້ມູນທີ່ລະບຸໄວ້ ໄຟ ຈາກບ່ອນເກັບມ້ຽນແລະຂຽນພວກມັນກັບຄືນໄປຫາ
ລະບົບໄຟລ໌ຂອງລະບົບປະຕິບັດການ. ຖ້າບໍ່ມີ ໄຟ ໄດ້ຖືກລະບຸໄວ້, ການຮວບຮວມທັງຫມົດແມ່ນ
ສານສະກັດ.
ຕົວປ່ຽນແປງ (ການດໍາເນີນງານ ສະເພາະ)
ຕົວແກ້ໄຂຂ້າງລຸ່ມນີ້ແມ່ນສະເພາະກັບການປະຕິບັດງານບາງຢ່າງ. ເບິ່ງພາກປະຕິບັດການ (ຂ້າງເທິງ)
ເພື່ອກໍານົດວ່າຕົວດັດແປງໃດສາມາດໃຊ້ໄດ້ກັບການດໍາເນີນງານໃດ.
[a]
ເມື່ອໃສ່ ຫຼືຍ້າຍໄຟລ໌ສະມາຊິກ, ຕົວເລືອກນີ້ກໍານົດຈຸດຫມາຍປາຍທາງຂອງໃຫມ່
ໄຟລ໌ທີ່ເປັນຫຼັງຈາກ relpos ສະມາຊິກ. ຖ້າ relpos ບໍ່ພົບ, ໄຟລ໌ຖືກວາງໄວ້
ໃນຕອນທ້າຍຂອງການຮວບຮວມ.
[ຂ]
ເມື່ອໃສ່ ຫຼືຍ້າຍໄຟລ໌ສະມາຊິກ, ຕົວເລືອກນີ້ກໍານົດຈຸດຫມາຍປາຍທາງຂອງໃຫມ່
ໄຟລ໌ເປັນກ່ອນທີ່ຈະໄດ້ relpos ສະມາຊິກ. ຖ້າ relpos ບໍ່ພົບ, ໄຟລ໌ຖືກວາງໄວ້
ໃນຕອນທ້າຍຂອງບ່ອນເກັບມ້ຽນ. ຕົວແກ້ໄຂນີ້ແມ່ນຄ້າຍຄືກັນກັບ i ຕົວດັດແປງ
[i]
ຄໍາສັບຄ້າຍຄືສໍາລັບ b ທາງເລືອກ.
[ຫຼື]
ໃນເວລາທີ່ສະກັດໄຟລ໌, ທາງເລືອກນີ້ຈະເຮັດໃຫ້ເກີດ llvm-ar ເພື່ອຮັກສາຕົ້ນສະບັບ
ເວລາດັດແກ້ຂອງໄຟລ໌ທີ່ມັນຂຽນ.
[ຫຼື]
ເມື່ອປ່ຽນໄຟລ໌ທີ່ມີຢູ່ໃນບ່ອນເກັບມ້ຽນ, ພຽງແຕ່ປ່ຽນໄຟລ໌ເຫຼົ່ານັ້ນທີ່ມີເວລາ
ສະແຕມຫຼາຍກວ່າເວລາຂອງສະມາຊິກໃນຮວບຮວມ.
ຕົວປ່ຽນແປງ (ທົ່ວໄປ)
ຕົວແກ້ໄຂຂ້າງລຸ່ມນີ້ອາດຈະຖືກນໍາໃຊ້ກັບການດໍາເນີນງານໃດໆ.
[ຄ]
ສໍາລັບການດໍາເນີນງານທັງຫມົດ, llvm-ar ຈະສ້າງແຟ້ມຈັດເກັບຢູ່ສະເໝີ ຖ້າມັນບໍ່ມີ.
ໂດຍປົກກະຕິ, llvm-ar ຈະພິມຂໍ້ຄວາມເຕືອນທີ່ຊີ້ບອກວ່າການເກັບແມ່ນໄດ້
ສ້າງ. ການໃຊ້ຕົວແກ້ໄຂນີ້ຈະປິດການເຕືອນນັ້ນ.
[S]
ຕົວແກ້ໄຂນີ້ຮຽກຮ້ອງໃຫ້ເພີ່ມດັດສະນີເກັບມ້ຽນ (ຫຼືຕາຕະລາງສັນຍາລັກ) ເຂົ້າໃນແຟ້ມຈັດເກັບ.
ນີ້ແມ່ນຮູບແບບການເຮັດວຽກເລີ່ມຕົ້ນ. ຕາຕະລາງສັນຍາລັກຈະມີທັງຫມົດພາຍນອກ
ຫນ້າທີ່ເບິ່ງເຫັນແລະຕົວແປທົ່ວໂລກທີ່ກໍານົດໂດຍໄຟລ໌ bitcode ທັງຫມົດທີ່ເກັບໄວ້ໃນແຟ້ມ.
[ສ]
ຕົວແກ້ໄຂນີ້ແມ່ນກົງກັນຂ້າມກັບ s ຕົວແກ້ໄຂ. ມັນແນະນໍາ llvm-ar ເພື່ອບໍ່ສ້າງ
ຕາຕະລາງສັນຍາລັກ. ຖ້າທັງສອງ s ແລະ S ຖືກນໍາໃຊ້, ຕົວແກ້ໄຂສຸດທ້າຍທີ່ຈະເກີດຂຶ້ນໃນທາງເລືອກທີ່ຈະ
ຊະນະ.
[v]
ຕົວແກ້ໄຂນີ້ແນະນໍາ llvm-ar ເປັນ verbose ກ່ຽວກັບສິ່ງທີ່ມັນກໍາລັງເຮັດ. ການແກ້ໄຂແຕ່ລະຄົນ
ການປະຕິບັດການຕໍ່ຕ້ານການຮວບຮວມຈະຜະລິດເສັ້ນຜົນຜະລິດທີ່ບອກວ່າສິ່ງທີ່ເປັນ
ເຮັດແລ້ວ.
ມາດຕະຖານ
ໄດ້ llvm-ar ຜົນປະໂຫຍດແມ່ນມີຈຸດປະສົງເພື່ອສະຫນອງ superset ຂອງ IEEE Std 1003.2 (POSIX.2)
ການທໍາງານສໍາລັບ ar. llvm-ar ສາມາດອ່ານໄດ້ທັງ SVR4 ແລະ BSD4.4 (ຫຼື Mac OS X). ຖ້າ
f ຕົວແກ້ໄຂແມ່ນມອບໃຫ້ x or r ການດໍາເນີນງານຫຼັງຈາກນັ້ນ llvm-ar ຈະຂຽນ SVR4 ເຂົ້າກັນໄດ້
ຮວບຮວມ. ໂດຍບໍ່ມີການດັດແປງນີ້, llvm-ar ຈະຂຽນ BSD4.4 ເຂົ້າກັນໄດ້ຮວບຮວມທີ່ມີ
ຊື່ຍາວທັນທີຫຼັງຈາກສ່ວນຫົວແລະຊີ້ບອກໂດຍໃຊ້ຫມາຍເຫດ "#1/ddd" ສໍາລັບ
ຊື່ຢູ່ໃນຫົວ.
ເອກະສານ ຮູບແບບ
ຮູບແບບໄຟລ໌ສໍາລັບໄຟລ໌ LLVM Archive ແມ່ນຄ້າຍຄືກັນກັບ BSD 4.4 ຫຼື Mac OSX archive
ໄຟລ໌. ໃນຄວາມເປັນຈິງ, ຍົກເວັ້ນຕາຕະລາງສັນຍາລັກ, the ar ຄໍາສັ່ງກ່ຽວກັບລະບົບປະຕິບັດການເຫຼົ່ານັ້ນ
ຄວນຈະສາມາດອ່ານໄຟລ໌ແຟ້ມຈັດເກັບ LLVM. ລາຍລະອຽດຂອງຮູບແບບໄຟລ໌ປະຕິບັດຕາມ.
ແຕ່ລະຄັງເກັບເລີ່ມຕົ້ນດ້ວຍຕົວເລກ magic archive ເຊິ່ງເປັນແປດຕົວອັກສອນທີ່ສາມາດພິມໄດ້
“! n" ບ່ອນທີ່ n ເປັນຕົວແທນຂອງຕົວອັກສອນແຖວໃຫມ່ (0x0A). ປະຕິບັດຕາມຕົວເລກ magic,
ໄຟລ໌ແມ່ນປະກອບດ້ວຍສະມາຊິກທີ່ມີຄວາມຍາວເຖິງທີ່ເລີ່ມຕົ້ນດ້ວຍຫົວເກັບມ້ຽນແລະລົງທ້າຍດ້ວຍ
ຕົວອັກສອນ padding ຖ້າຈໍາເປັນ (ເພື່ອເຮັດໃຫ້ຄວາມຍາວເທົ່າທຽມກັນ). ແຕ່ລະສະມາຊິກໄຟລ໌ແມ່ນປະກອບດ້ວຍ
ຂອງ header (ກໍານົດໄວ້ຂ້າງລຸ່ມນີ້), ທາງເລືອກໃຫມ່ທີ່ສິ້ນສຸດ "ຊື່ໄຟລ໌ຍາວ" ແລະ
ເນື້ອໃນຂອງໄຟລ໌.
ຊ່ອງຂໍ້ມູນຂອງສ່ວນຫົວແມ່ນໄດ້ອະທິບາຍໄວ້ໃນລາຍການຂ້າງລຸ່ມນີ້. ຊ່ອງຂໍ້ມູນທັງໝົດຂອງສ່ວນຫົວ
ມີພຽງຕົວອັກສອນ ASCII, ຖືກປະໄວ້ຢ່າງຍຸດຕິທຳ ແລະຖືກປູດ້ວຍຊ່ອງຫວ່າງ
ລັກສະນະ.
ຊື່ - char[16]
ຊ່ອງຂໍ້ມູນສ່ວນຫົວນີ້ໃຫ້ຊື່ຂອງສະມາຊິກໃນແຟ້ມຈັດເກັບ. ຖ້າຊື່ຍາວກວ່າ
ຫຼາຍກວ່າ 15 ຕົວອັກສອນ ຫຼືມີຕົວອັກສອນຫຍໍ້ໜ້າ (/), ຈາກນັ້ນຊ່ອງຂໍ້ມູນນີ້ມີ #1/nn
ບ່ອນທີ່ nnn ສະຫນອງຄວາມຍາວຂອງຊື່ແລະ ອັນດັບ 1 / ເປັນຕົວຫນັງສື. ໃນກໍລະນີດັ່ງກ່າວນີ້, ໄດ້
ຊື່ທີ່ແທ້ຈິງຂອງໄຟລ໌ແມ່ນສະຫນອງໃຫ້ຢູ່ໃນ nnn bytes ທັນທີປະຕິບັດຕາມ header.
ຖ້າຊື່ແມ່ນ 15 ຕົວອັກສອນຫຼືຫນ້ອຍກວ່າ, ມັນຖືກບັນຈຸໂດຍກົງໃນພາກສະຫນາມນີ້ແລະ
ສິ້ນສຸດດ້ວຍຕົວຫຍໍ້ (/).
ວັນທີ - char[12]
ຊ່ອງຂໍ້ມູນນີ້ໃຫ້ວັນທີຂອງການດັດແກ້ໄຟລ໌ໃນຮູບແບບຂອງອັດຕານິຍົມ
ເລກລະຫັດທີ່ໃຫ້ຈໍານວນວິນາທີນັບຕັ້ງແຕ່ຍຸກ (ນັບຕັ້ງແຕ່ 00:00:00 ມັງກອນ
1, 1970) ຕໍ່ຂໍ້ມູນຈໍາເພາະຂອງ Posix.
uid - char[6]
ຊ່ອງຂໍ້ມູນນີ້ໃຫ້ລະຫັດຜູ້ໃຊ້ຂອງໄຟລ໌ທີ່ຖືກເຂົ້າລະຫັດເປັນສະຕຣິງທົດສະນິຍົມ ASCII. ນີ້
ພາກສະຫນາມອາດຈະບໍ່ມີຄວາມຫມາຍຫຼາຍກ່ຽວກັບລະບົບທີ່ບໍ່ແມ່ນ Unix. ໃນ Unix, ມັນແມ່ນຄ່າດຽວກັນກັບ
ພາກສະຫນາມ st_uid ຂອງໂຄງສ້າງສະຖິຕິສົ່ງຄືນໂດຍ ລັດ(2) ລະບົບປະຕິບັດການໂທ.
gid - char[6]
ຊ່ອງຂໍ້ມູນນີ້ໃຫ້ລະຫັດກຸ່ມຂອງໄຟລ໌ທີ່ຖືກເຂົ້າລະຫັດເປັນສະຕຣິງທົດສະນິຍົມ ASCII. ນີ້
ພາກສະຫນາມອາດຈະບໍ່ມີຄວາມຫມາຍຫຼາຍກ່ຽວກັບລະບົບທີ່ບໍ່ແມ່ນ Unix. ໃນ Unix, ມັນແມ່ນຄ່າດຽວກັນກັບ
ພາກສະຫນາມ st_gid ຂອງໂຄງສ້າງສະຖິຕິສົ່ງຄືນໂດຍ ລັດ(2) ລະບົບປະຕິບັດການໂທ.
ໂຫມດ - char[8]
ຊ່ອງຂໍ້ມູນນີ້ໃຫ້ຮູບແບບການເຂົ້າເຖິງຂອງໄຟລ໌ທີ່ຖືກເຂົ້າລະຫັດເປັນສະຕຣິງ ASCII octal. ນີ້
ພາກສະຫນາມອາດຈະບໍ່ມີຄວາມຫມາຍຫຼາຍກ່ຽວກັບລະບົບທີ່ບໍ່ແມ່ນ Unix. ໃນ Unix, ມັນແມ່ນຄ່າດຽວກັນກັບ
ພາກສະຫນາມ st_mode ຂອງໂຄງສ້າງສະຖິຕິທີ່ສົ່ງຄືນໂດຍ ລັດ(2) ລະບົບປະຕິບັດການໂທ.
ຂະໜາດ - char[10]
ຊ່ອງຂໍ້ມູນນີ້ສະຫນອງຂະຫນາດຂອງໄຟລ໌, ໃນ bytes, ເຂົ້າລະຫັດເປັນສະຕຣິງທົດສະນິຍົມ ASCII.
fmag - char[2]
ຊ່ອງຂໍ້ມູນນີ້ແມ່ນໝາຍເລກ magic ສະມາຊິກຂອງແຟ້ມຈັດເກັບ. ເນື້ອໃນຂອງມັນແມ່ນສະເຫມີທັງສອງ
ຫມາຍຕິກກັບຕົວອັກສອນ (0x60) ແລະແຖວໃຫມ່ (0x0A). ນີ້ສະຫນອງຜົນປະໂຫຍດມາດຕະການບາງຢ່າງໃນ
ການລະບຸໄຟລ໌ແຟ້ມຈັດເກັບທີ່ເສຍຫາຍ.
offset - vbr ເຂົ້າລະຫັດ 32-bit integer
ລາຍການຊົດເຊີຍສະຫນອງການຊົດເຊີຍເຂົ້າໄປໃນແຟ້ມຈັດເກັບທີ່ສະມາຊິກ bitcode
ເກັບຮັກສາໄວ້ທີ່ກ່ຽວຂ້ອງກັບສັນຍາລັກ. ຄ່າຊົດເຊີຍແມ່ນ 0 ອີງຕາມຈຸດເລີ່ມຕົ້ນຂອງ
ສະມາຊິກໄຟລ໌ "ປົກກະຕິ" ທໍາອິດ. ເພື່ອເອົາການຊົດເຊີຍໄຟລ໌ຕົວຈິງຂອງສະມາຊິກ, ທ່ານ
ຕ້ອງເພີ່ມຈໍານວນຂອງ bytes ຄອບຄອງໂດຍລາຍເຊັນຂອງໄຟລ໌ (8 bytes) ແລະສັນຍາລັກ
ໂຕະ. ຄ່າຂອງລາຍການນີ້ຖືກເຂົ້າລະຫັດໂດຍໃຊ້ການເຂົ້າລະຫັດອັດຕາບິດຕົວແປເພື່ອຫຼຸດ
ຂະຫນາດຂອງຕາຕະລາງສັນຍາລັກ. ການເຂົ້າລະຫັດອັດຕາບິດຕົວແປໃຊ້ບິດສູງ (0x80) ຂອງ
ແຕ່ລະ byte ເພື່ອຊີ້ບອກວ່າມີ bytes ຫຼາຍທີ່ຈະປະຕິບັດຕາມ. ສ່ວນທີ່ຍັງເຫຼືອ 7 ບິດໃນແຕ່ລະ
byte ປະຕິບັດ bits ຈາກຄ່າ. ໄບຕ໌ສຸດທ້າຍບໍ່ມີການຕັ້ງຄ່າບິດສູງ.
length - vbr ເຂົ້າລະຫັດ 32-bit integer
ລາຍການຄວາມຍາວໃຫ້ຄວາມຍາວຂອງສັນຍາລັກຕໍ່ໄປນີ້. ແບບນີ້ ຊົດເຊີຍ ລາຍການ,
ຄວາມຍາວແມ່ນອັດຕາບິດຕົວແປທີ່ເຂົ້າລະຫັດ.
symbol - array ລັກສະນະ
ລາຍການສັນຍາລັກສະຫນອງຂໍ້ຄວາມຂອງສັນຍາລັກທີ່ກ່ຽວຂ້ອງກັບ ຊົດເຊີຍ. ໄດ້
ສັນຍາລັກບໍ່ໄດ້ຖືກຢຸດໂດຍຕົວອັກສອນໃດໆ. ຄວາມຍາວຂອງມັນແມ່ນສະຫນອງໃຫ້ໂດຍ ຄວາມຍາວ ພາກສະຫນາມ.
ໃຫ້ສັງເກດວ່າຖືກອະນຸຍາດໃຫ້ (ແຕ່ບໍ່ສະຫລາດ) ໃຊ້ຕົວອັກສອນທີ່ບໍ່ແມ່ນພິມ (ແມ້ແຕ່ 0x00) ໃນ
ສັນຍາລັກ. ນີ້ອະນຸຍາດໃຫ້ສໍາລັບການເຂົ້າລະຫັດຫຼາຍຂອງຊື່ສັນຍາລັກ.
ອອກ STATUS
If llvm-ar ສໍາເລັດຜົນ, ມັນຈະອອກດ້ວຍ 0. ຄວາມຜິດພາດການນໍາໃຊ້, ຜົນໃຫ້ເປັນລະຫັດອອກຂອງ 1.
ຍາກ (ໂດຍປົກກະຕິລະບົບໄຟລ໌) ຂໍ້ຜິດພາດເຮັດໃຫ້ລະຫັດອອກຂອງ 2. ອື່ນ ຫຼືບໍ່ຮູ້.
ຄວາມຜິດພາດເຮັດໃຫ້ລະຫັດອອກຂອງ 3.
ໃຊ້ llvm-ar ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net