ນີ້ແມ່ນຄໍາສັ່ງ gdb ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
gdb - GNU Debugger
ສະຫຼຸບສັງລວມ
gdb [-ຊ່ວຍ] [- ນ] [-nx] [-q] [- ຊຸດ] [-cd=dir] [-f] [-b bps]
[-tty=dev] [-s symfile] [-e ໂປຣແກມ] [ເຖິງ ໂປຣແກມ] [-c core] [-p procID]
[-x cmds] [-d dir] [ໂປຣແກມ|ໂປຣແກມ procID|ໂປຣແກມ core]
ລາຍລະອຽດ
ຈຸດປະສົງຂອງ debugger ເຊັ່ນ GDB ແມ່ນເພື່ອໃຫ້ເຈົ້າເຫັນສິ່ງທີ່ເກີດຂຶ້ນ "ພາຍໃນ"
ໂຄງການອື່ນໃນຂະນະທີ່ມັນປະຕິບັດ - ຫຼືສິ່ງທີ່ໂຄງການອື່ນກໍາລັງເຮັດໃນເວລານີ້
ຂັດຂ້ອງ.
GDB ສາມາດເຮັດສີ່ປະເພດຕົ້ນຕໍ (ບວກກັບສິ່ງອື່ນໆທີ່ສະຫນັບສະຫນູນສິ່ງເຫຼົ່ານີ້) ເພື່ອຊ່ວຍເຈົ້າ
ຈັບແມງໄມ້ໃນການກະທໍາ:
· ເລີ່ມຕົ້ນໂຄງການຂອງທ່ານ, ການລະບຸສິ່ງໃດແດ່ທີ່ອາດຈະມີຜົນກະທົບພຶດຕິກໍາຂອງຕົນ.
·ເຮັດໃຫ້ໂຄງການຂອງທ່ານຢຸດເຊົາໃນເງື່ອນໄຂທີ່ກໍານົດ.
· ກວດເບິ່ງສິ່ງທີ່ເກີດຂຶ້ນ, ເມື່ອໂຄງການຂອງເຈົ້າຢຸດແລ້ວ.
·ການປ່ຽນແປງສິ່ງທີ່ຢູ່ໃນໂຄງການຂອງທ່ານ, ດັ່ງນັ້ນທ່ານສາມາດທົດລອງການແກ້ໄຂຜົນກະທົບຂອງ
ແມງໄມ້ອັນໜຶ່ງ ແລະສືບຕໍ່ຮຽນຮູ້ກ່ຽວກັບອັນອື່ນ.
ທ່ານສາມາດໃຊ້ GDB ເພື່ອແກ້ໄຂບັນດາໂຄງການທີ່ຂຽນເປັນ C, C@t{++}, Fortran ແລະ Modula-2.
GDB ຖືກເອີ້ນດ້ວຍຄໍາສັ່ງ shell "gdb". ເມື່ອເລີ່ມຕົ້ນ, ມັນຈະອ່ານຄໍາສັ່ງຈາກ
terminal ຈົນກ່ວາທ່ານບອກມັນອອກດ້ວຍຄໍາສັ່ງ GDB "ອອກ". ທ່ານສາມາດໄດ້ຮັບການຊ່ວຍເຫຼືອອອນໄລນ໌
ຈາກ GDB ຕົວຂອງມັນເອງໂດຍໃຊ້ຄໍາສັ່ງ "ຊ່ວຍ".
ທ່ານສາມາດດໍາເນີນການ "gdb" ໂດຍບໍ່ມີການໂຕ້ຖຽງຫຼືທາງເລືອກ; ແຕ່ວິທີປົກກະຕິທີ່ສຸດເພື່ອເລີ່ມຕົ້ນ GDB ແມ່ນ
ດ້ວຍການໂຕ້ຖຽງຫນຶ່ງຫຼືສອງ, ການລະບຸໂຄງການປະຕິບັດເປັນການໂຕ້ຖຽງ:
ໂຄງການ gdb
ນອກນັ້ນທ່ານຍັງສາມາດເລີ່ມຕົ້ນດ້ວຍທັງໂຄງການທີ່ປະຕິບັດໄດ້ແລະໄຟລ໌ຫຼັກທີ່ລະບຸໄວ້:
ຫຼັກໂຄງການ gdb
ແທນທີ່ຈະ, ທ່ານສາມາດລະບຸ ID ຂະບວນການເປັນການໂຕ້ຖຽງທີສອງ, ຖ້າທ່ານຕ້ອງການແກ້ໄຂ a
ຂະບວນການແລ່ນ:
ໂປຣແກຣມ gdb 1234
gdb -p 1234
ຈະແນບ GDB ເພື່ອປະມວນຜົນ 1234 (ເວັ້ນເສຍແຕ່ວ່າເຈົ້າມີໄຟລ໌ຊື່ 1234; GDB ກວດສອບ
ສໍາລັບໄຟລ໌ຫຼັກກ່ອນ). ມີທາງເລືອກ -p ທ່ານສາມາດຍົກເວັ້ນ ໂຄງການ ຊື່ເອກະສານ.
ນີ້ແມ່ນບາງຄໍາສັ່ງ GDB ທີ່ຕ້ອງການເລື້ອຍໆທີ່ສຸດ:
ພັກຜ່ອນ [ເອກະສານ:]ຫນ້າທີ່
ກໍານົດຈຸດຢຸດຢູ່ທີ່ ຫນ້າທີ່ (ໃນ ເອກະສານ).
ແລ່ນ [ສໍ້ໂກງ]
ເລີ່ມຕົ້ນໂຄງການຂອງທ່ານ (ມີ ສໍ້ໂກງ, ຖ້າລະບຸ).
bt Backtrace: ສະແດງ stack ຂອງໂຄງການ.
ພິມ ຕົວຢ່າງ
ສະແດງຄ່າຂອງການສະແດງຜົນ.
c ສືບຕໍ່ດໍາເນີນການໂຄງການຂອງທ່ານ (ຫຼັງຈາກຢຸດ, ເຊັ່ນ: ຢູ່ຈຸດຢຸດ).
ຕໍ່ໄປ
ປະຕິບັດເສັ້ນໂຄງການຕໍ່ໄປ (ຫຼັງຈາກຢຸດ); ຂັ້ນຕອນ ໃນໄລຍະ ໂທຟັງຊັນໃດນຶ່ງໃນສາຍ.
ດັດແກ້ [ເອກະສານ:]ຫນ້າທີ່
ເບິ່ງເສັ້ນໂຄງການບ່ອນທີ່ມັນຖືກຢຸດໃນປັດຈຸບັນ.
ບັນຊີລາຍຊື່ [ເອກະສານ:]ຫນ້າທີ່
ພິມຂໍ້ຄວາມຂອງໂປລແກລມໃນບໍລິເວນໃກ້ຄຽງຂອງບ່ອນທີ່ມັນຖືກຢຸດໃນປັດຈຸບັນ.
ຂັ້ນຕອນ
ປະຕິບັດເສັ້ນໂຄງການຕໍ່ໄປ (ຫຼັງຈາກຢຸດ); ຂັ້ນຕອນ ເຂົ້າໄປໃນ ໂທຟັງຊັນໃດນຶ່ງໃນສາຍ.
ຊ່ວຍເຫຼືອ [ຊື່]
ສະແດງຂໍ້ມູນກ່ຽວກັບຄໍາສັ່ງ GDB ຊື່, ຫຼືຂໍ້ມູນທົ່ວໄປກ່ຽວກັບການໃຊ້ GDB.
ເຊົາ
ອອກຈາກ GDB.
ສໍາລັບລາຍລະອຽດເຕັມກ່ຽວກັບ GDB, ເບິ່ງ ການນໍາໃຊ້ GDB: A ຄູ່ມື to ໄດ້ GNU ແຫຼ່ງທີ່ມາ-ລະດັບ Debugger, by
Richard M. Stallman ແລະ Roland H. Pesch. ຂໍ້ຄວາມດຽວກັນແມ່ນມີຢູ່ໃນອອນໄລນ໌ເປັນ "gdb"
ເຂົ້າໃນໂຄງການ "ຂໍ້ມູນ".
OPTIONS
ການໂຕ້ຖຽງໃດໆນອກເຫນືອຈາກທາງເລືອກທີ່ລະບຸໄຟລ໌ທີ່ສາມາດປະຕິບັດໄດ້ແລະໄຟລ໌ຫຼັກ (ຫຼື ID ຂະບວນການ);
ນັ້ນແມ່ນ, ການໂຕ້ຖຽງທໍາອິດທີ່ພົບກັບບໍ່ມີທຸງທາງເລືອກທີ່ກ່ຽວຂ້ອງແມ່ນທຽບເທົ່າກັບ a
ເຖິງ ທາງເລືອກ, ແລະອັນທີສອງ, ຖ້າມີ, ເທົ່າກັບ a -c ທາງເລືອກຖ້າມັນເປັນຊື່ຂອງ a
ໄຟລ໌. ທາງເລືອກຫຼາຍມີທັງຮູບແບບຍາວແລະສັ້ນ; ທັງສອງຖືກສະແດງຢູ່ທີ່ນີ້. ຮູບແບບຍາວ
ຍັງຖືກຮັບຮູ້ຖ້າທ່ານຕັດພວກມັນ, ຕາບໃດທີ່ພຽງພໍຂອງທາງເລືອກທີ່ຈະເປັນ
ບໍ່ຊັດເຈນ. (ຖ້າຫາກວ່າທ່ານຕ້ອງການ, ທ່ານສາມາດທຸງ arguments ທາງເລືອກທີ່ມີ + ແທນທີ່ຈະ -, ເຖິງແມ່ນວ່າ
ພວກເຮົາສະແດງໃຫ້ເຫັນເຖິງສົນທິສັນຍາປົກກະຕິກວ່າ.)
ທາງເລືອກທັງຫມົດແລະການໂຕ້ຖຽງເສັ້ນຄໍາສັ່ງທີ່ທ່ານໃຫ້ແມ່ນໄດ້ຖືກປຸງແຕ່ງຕາມລໍາດັບ.
ຄໍາສັ່ງສ້າງຄວາມແຕກຕ່າງໃນເວລາທີ່ -x ທາງເລືອກແມ່ນຖືກນໍາໃຊ້.
-ຊ່ວຍ
-h ບອກຕົວເລືອກທັງໝົດ, ດ້ວຍຄໍາອະທິບາຍສັ້ນໆ.
-symbols=ເອກະສານ
-s ເອກະສານ
ອ່ານຕາຕະລາງສັນຍາລັກຈາກໄຟລ໌ ເອກະສານ.
- ຂຽນ
ເປີດໃຊ້ການຂຽນເຂົ້າໄປໃນໄຟລ໌ທີ່ສາມາດປະຕິບັດໄດ້ແລະຫຼັກ.
-exec=ເອກະສານ
-e ເອກະສານ
ໃຊ້ໄຟລ໌ ເອກະສານ ເປັນໄຟລ໌ທີ່ສາມາດປະຕິບັດໄດ້ເພື່ອປະຕິບັດໃນເວລາທີ່ເຫມາະສົມ, ແລະສໍາລັບການກວດສອບ
ຂໍ້ມູນບໍລິສຸດໂດຍສົມທົບກັບ dump ຫຼັກ.
-se=ເອກະສານ
ອ່ານຕາຕະລາງສັນຍາລັກຈາກໄຟລ໌ ເອກະສານ ແລະໃຊ້ມັນເປັນໄຟລ໌ທີ່ສາມາດປະຕິບັດໄດ້.
-core=ເອກະສານ
-c ເອກະສານ
ໃຊ້ໄຟລ໌ ເອກະສານ ເປັນການຖິ້ມຂີ້ເຫຍື້ອຫຼັກເພື່ອກວດກາ.
-command=ເອກະສານ
-x ເອກະສານ
ປະຕິບັດຄໍາສັ່ງ GDB ຈາກໄຟລ໌ ເອກະສານ.
- ຕົວຢ່າງ ຄໍາສັ່ງ
ປະຕິບັດ GDB ທີ່ມອບໃຫ້ ຄໍາສັ່ງ.
-directory=ລະບົບ
-d ລະບົບ
ຕື່ມ ລະບົບ ໄປຫາເສັ້ນທາງເພື່ອຊອກຫາໄຟລ໌ແຫຼ່ງ.
- ນ ຢ່າປະຕິບັດຄໍາສັ່ງຈາກ ~/.gdbinit.
-nx
-n ຢ່າປະຕິບັດຄໍາສັ່ງຈາກໃດໆ .gdbinit ໄຟລ໌ເບື້ອງຕົ້ນ.
- ງຽບ
-q "ງຽບ". ຫ້າມພິມຂໍ້ຄວາມແນະນຳ ແລະລິຂະສິດ. ຂໍ້ຄວາມເຫຼົ່ານີ້ແມ່ນ
ຍັງສະກັດກັ້ນໃນຮູບແບບ batch.
- ຊຸດ
ດໍາເນີນການໃນຮູບແບບ batch. ອອກຈາກສະຖານະ 0 ຫຼັງຈາກປະມວນຜົນໄຟລ໌ຄໍາສັ່ງທັງຫມົດ
ລະບຸໄວ້ກັບ -x (ແລະ .gdbinit, ຖ້າບໍ່ inhibited). ອອກດ້ວຍສະຖານະທີ່ບໍ່ແມ່ນສູນຖ້າເປັນ
ຄວາມຜິດພາດເກີດຂຶ້ນໃນການປະຕິບັດຄໍາສັ່ງ GDB ໃນໄຟລ໌ຄໍາສັ່ງ.
ຮູບແບບ batch ອາດຈະເປັນປະໂຫຍດສໍາລັບການແລ່ນ GDB ເປັນຕົວກອງ, ຕົວຢ່າງເພື່ອດາວໂຫລດແລະແລ່ນ
ໂຄງການໃນຄອມພິວເຕີອື່ນ; ເພື່ອເຮັດໃຫ້ນີ້ເປັນປະໂຫຍດຫຼາຍ, ຂໍ້ຄວາມ
ໂປຣແກຣມອອກຈາກປົກກະຕິ.
(ເຊິ່ງປົກກະຕິແມ່ນອອກທຸກຄັ້ງທີ່ໂຄງການທີ່ເຮັດວຽກພາຍໃຕ້ການຄວບຄຸມ GDB ສິ້ນສຸດລົງ)
ບໍ່ໄດ້ອອກໃນເວລາທີ່ແລ່ນຢູ່ໃນໂຫມດ batch.
-cd=ລະບົບ
ດໍາເນີນການ GDB ໂດຍໃຊ້ ລະບົບ ເປັນໄດເລກະທໍລີທີ່ເຮັດວຽກຂອງມັນ, ແທນທີ່ຈະເປັນໄດເລກະທໍລີປະຈຸບັນ.
-ຊື່ເຕັມ
-f Emacs ຕັ້ງຕົວເລືອກນີ້ເມື່ອມັນແລ່ນ GDB ເປັນຂະບວນການຍ່ອຍ. ມັນບອກ GDB ເພື່ອສົ່ງອອກ
ຊື່ໄຟລ໌ເຕັມ ແລະເລກແຖວໃນແບບມາດຕະຖານ, ສາມາດຮັບຮູ້ໄດ້ໃນແຕ່ລະຄັ້ງທີ່ stack
ກອບຖືກສະແດງ (ເຊິ່ງລວມມີແຕ່ລະຄັ້ງທີ່ໂຄງການຢຸດ). ນີ້ຮັບຮູ້ໄດ້
ຮູບແບບຄ້າຍຄືສອງ \ 032 ຕົວອັກສອນ, ຕາມດ້ວຍຊື່ໄຟລ໌, ເລກແຖວ ແລະ
ຕຳແໜ່ງຕົວອັກສອນທີ່ແຍກອອກດ້ວຍຈໍ້າສອງເມັດ, ແລະແຖວໃໝ່. ການໂຕ້ຕອບ Emacs-to-GDB
ໂຄງການນໍາໃຊ້ທັງສອງ \ 032 ຕົວອັກສອນເປັນສັນຍານເພື່ອສະແດງລະຫັດແຫຼ່ງສໍາລັບການ
ກອບ.
-b bps
ກໍານົດຄວາມໄວເສັ້ນ (ອັດຕາ baud ຫຼື bits ຕໍ່ວິນາທີ) ຂອງການໂຕ້ຕອບ serial ທີ່ໃຊ້ໂດຍ GDB
ສໍາລັບການ debugging ໄລຍະໄກ.
-tty=ອຸປະກອນ
ດໍາເນີນການໂດຍໃຊ້ ອຸປະກອນ ສໍາລັບການປ້ອນຂໍ້ມູນ ແລະຜົນຜະລິດມາດຕະຖານຂອງໂຄງການຂອງທ່ານ.
ໃຊ້ gdb ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net