簡體   English   中英

Boost.Test:如何自動附加調試器(GDB)?

[英]Boost.Test: How to automatically attach debugger (GDB)?

在執行項目的Boost測試時,我看到

Test command: ...
Environment variables:
 BOOST_TEST_AUTO_START_DBG=yes
 BOOST_TEST_BUILD_INFO=yes
 BOOST_TEST_CATCH_SYSTEM_ERRORS=yes
 BOOST_TEST_COLOR_OUTPUT=yes
 BOOST_TEST_DETECT_FP_EXCEPTIONS=yes
 BOOST_TEST_LOG_FORMAT=HRF
 BOOST_TEST_LOG_LEVEL=test_suite
 BOOST_TEST_LOG_SINK=stdout
 BOOST_TEST_RANDOM=1
 BOOST_TEST_REPORT_FORMAT=XML
 BOOST_TEST_REPORT_LEVEL=detailed
 BOOST_TEST_REPORT_SINK=...
 BOOST_TEST_RESULT_CODE=yes
...

確認auto_start_dbg選項設置正確的內容。 然后,例如,發生以下故障:

unknown location(0): fatal error: in "...": boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::ios_base::failure[abi:cxx11]> >: failed opening file: No such file or directory: iostream error

我本來希望自動跳入捕獲此異常的交互式調試器實例(在本例中為GDB)。

我的期望是錯誤的還是在我這方面配置錯誤? 您如何使用此選項?

我的期望是錯誤的還是在我這方面配置錯誤? 您如何使用此選項?

您的期望是錯誤的。 此選項僅與信號有關。 嘗試取消引用NULL指針,您將看到gdb自動啟動。

編輯(2017/02/21)

我只是想一個更好的例子。 使用assert 使用起來更加方便。 它將引發SIGABRT

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM