6.78. ກ່ຽວກັບ Debugging ສັນຍາລັກ
ໂປລແກລມແລະຫ້ອງສະຫມຸດສ່ວນຫຼາຍແມ່ນ, ໂດຍຄ່າເລີ່ມຕົ້ນ, ລວບລວມດ້ວຍສັນຍາລັກ debugging ລວມ (ກັບ gcc's -g ທາງເລືອກ). ນີ້ຫມາຍຄວາມວ່າເມື່ອ debugging ໂປລແກລມຫຼືຫ້ອງສະຫມຸດທີ່ລວບລວມຂໍ້ມູນ debugging ລວມ, debugger ສາມາດສະຫນອງບໍ່ພຽງແຕ່ທີ່ຢູ່ຫນ່ວຍຄວາມຈໍາ, ແຕ່ຍັງຊື່ຂອງປົກກະຕິແລະຕົວແປ.
ຢ່າງໃດກໍຕາມ, ການລວມເອົາສັນຍາລັກການແກ້ບັນຫາເຫຼົ່ານີ້ຂະຫຍາຍໂຄງການຫຼືຫ້ອງສະຫມຸດຢ່າງຫຼວງຫຼາຍ. ຕໍ່ໄປນີ້ແມ່ນຕົວຢ່າງຂອງຈໍານວນພື້ນທີ່ທີ່ສັນຍາລັກເຫຼົ່ານີ້ຄອບຄອງ:
•ກ bash ໄບນາຣີທີ່ມີສັນຍາລັກດີບັກ: 1200 KB
•ກ bash ໄບນາຣີທີ່ບໍ່ມີສັນຍາລັກດີບັກ: 480 KB
• ໄຟລ໌ glibc ແລະ GCC (/ lib ແລະ / usr / lib) ທີ່ມີສັນຍາລັກ debugging: 87 MB
• ໄຟລ໌ glibc ແລະ GCC ທີ່ບໍ່ມີສັນຍາລັກດີບັກ: 16 MB
ຂະຫນາດອາດຈະແຕກຕ່າງກັນໄປຕາມທີ່ compiler ແລະ C library ຖືກນໍາໃຊ້, ແຕ່ເມື່ອປຽບທຽບບັນດາໂຄງການທີ່ມີແລະບໍ່ມີສັນຍາລັກ debugging, ຄວາມແຕກຕ່າງມັກຈະເປັນປັດໃຈລະຫວ່າງສອງຫາຫ້າ.
ເນື່ອງຈາກວ່າຜູ້ໃຊ້ສ່ວນໃຫຍ່ຈະບໍ່ເຄີຍໃຊ້ debugger ໃນຊອບແວລະບົບຂອງເຂົາເຈົ້າ, ຫຼາຍພື້ນທີ່ດິດສາມາດໄດ້ຮັບຄືນໂດຍການຖອນສັນຍາລັກເຫຼົ່ານີ້. ພາກສ່ວນຕໍ່ໄປສະແດງໃຫ້ເຫັນວິທີການລອກເອົາສັນຍາລັກ debugging ທັງຫມົດອອກຈາກໂຄງການແລະຫ້ອງສະຫມຸດ.