使用 CLion + gdb Debug 程式

CLion是一款專為開發C及C++所設計的跨平台IDE。它是以IntelliJ為基礎設計的,包含了許多智慧功能來提高開發人員的生產力。支援代碼分析、快速修復和重構,集合的除錯器可以用 GDB 或 LLDB 作為後端,輕鬆調查和解決問題,能夠為程序員提供一個整合式的C/C ++開發環境

https://www.jetbrains.com/clion/

繼續閱讀全文 »

dear imgui 介紹 - 輕量級的 GUI Library

Dear Imgui 是個輕量、快速的 imtermediate GUI 讓開發者可以非常快速的建立 GUI,被遊戲開發(gamedev)、編輯器(editor)、除錯器(debugger)開發者等使用。

使用 imgui 的 code 非常簡單且易於修改,imgui 本身是無狀態的,與一般的 retained mode GUI 相反,imgui 不用儲存 GUI 物件或是註冊回調(Callback)

繼續閱讀全文 »

在 macOS Mojave 上正常使用 gdb

在 macOS 上使用 gdb 時,如果沒有做以下修改,通常會是這樣:

1
2
3
4
gdb$ r
Starting program: /private/tmp/a.out
Unable to find Mach task port for process-id 20201: (os/kern) failure (0x5).
(please check gdb is codesigned - see taskgated(8))

這是因為 Darwin 內核預設禁止沒有特殊權限的程序偵錯(Debugging)其他程序,在預設這個選項是關閉的,如果要開啟則要用系統信任的憑證進行簽章(codesign)。

繼續閱讀全文 »