backtrace

    4熱度

    3回答

    我從同事那裏收到了我的程序(運行在RHEL 5.3上的qt應用程序)的回溯,當我分析它時,發現了一些我無法解釋的東西。如果你看這個回溯,你會注意到main和_start的蹤跡。但在此之前,我們會看到_ZN19datalog_render_area9prepStripEh和_ZN12QMutexLockerD1Ev,它們位於我的程序中。如何在_start和main之前看到我的一些函數被調用。這不是不

    0熱度

    3回答

    有沒有什麼辦法知道所有先前的函數被調用之前我的代碼中的一個點? 例如:我在我的項目中設置了abc.php中的一個點,並且我希望獲得在達到該點之前調用的所有函數。 debug_backtrace()在這裏沒有幫助。 非常感謝:)

    4熱度

    1回答

    我想以與在gdb中完成的格式類似的格式從Linux中的C++程序轉儲回溯。我試圖使用backtrace()和backtrace_symbols()函數來實現此目的。這些返回的函數名稱和偏移量。我可以使用__cxa_demangle()函數來獲取可讀的函數名稱。 是否有任何方法獲取文件/行位置,因爲它是由gdb完成的?

    3熱度

    2回答

    我已經安裝的PHPUnit和Xdebug,並在我的CLI的php.ini文件,我已經有了: display_errors = On xdebug.default_enable = 1 我已經證實,當我使用交互式控制檯創建錯誤的Xdebug的回溯打印,但是當運行phpunit時發生錯誤時,沒有回溯? 回溯發生了什麼? phpunit是從我這裏隱藏的嗎?有我缺少的設置嗎? 謝謝!

    67熱度

    4回答

    特定於Linux的backtrace()和backtrace_symbols()允許您生成程序的調用跟蹤。但是,它只打印功能地址,而不是我的程序的名稱。我怎樣才能讓他們打印函數名稱呢?我試着用-g以及-ggdb來編譯程序。測試用例下面只是打印此: BACKTRACE ------------ ./a.out() [0x8048616] ./a.out() [0x8

    10熱度

    3回答

    我想在我的(C++)程序執行的某個位置獲得回溯。 因爲我正在使用backtrace和backtrace_symbols。沿着這條線: std::string stacktrace(unsigned int frames_to_skip) { std::string str; void* stack_addrs[50]; int trace_size = backt

    2熱度

    2回答

    我有一個在linux 64位系統下運行的發行版服務器進程。它崩潰並留下一個coredump文件。我使用gdb來調試這樣的: GDB SVR核心轉儲文件 ,得到了以下回溯: (gdb) where #0 0x0000000000432691 in ??() #1 0x00002b07655a50cc in ??() #2 0x00002b07655a50c4 in ??() #3 0x000

    3熱度

    1回答

    我的應用程序中的一些線程位於優化函數中,當我調試應用程序時,gdb無法從這些函數中回溯。但我已經看過了彙編,並通過做這樣的事情可以部分地放鬆手了以前的函數的幀堆棧: set $old_ra = $ra set $old_sp = $sp set $ra = *(unsigned long*)($sp+28) set $sp = $sp + 48 bt set $ra = $old_ra

    0熱度

    2回答

    如何寫一個C函數打印回溯到那函數被調用。 我不希望使用任何library.I想我自己寫的代碼來完成這項工作。 任何人都可以請輸入來實現這一任務呢?

    2熱度

    1回答

    我有一個測試引發了一個錯誤。爲了追查我結束了加入此方法的模型稱爲NodeAffiliation問題: def initialize a1, a2 raise "kaboom" end ,然後我得到這個錯誤: RuntimeError: kaboom app/models/node_affiliation.rb:13:in `initialize' test/unit/a