我一直在我的程序中出現分段錯誤,但沒有生成核心轉儲文件。 ulimit顯示的值是無限的,確實沒有ulimit -c的限制,看起來沒有問題。有任何想法嗎?分段錯誤,沒有核心轉儲
回答
這可能有幾個原因
- 到目錄
- 程序改變工作目錄
尋找其他地方的核心沒有寫訪問過 - 磁盤已滿
- 的ulimit被設置在一個外殼中並且程序在不同的外殼或環境中啓動
+程序是一個守護進程,但OP會爲其當前shell會話更改ulimit設置。 – Slava 2013-03-07 13:57:47
@Slava謝謝,補充說。 – 2013-03-07 14:34:46
要解決的shell會話問題,提供你不反對被根測試:特別是你在內存訪問錯誤的地址發生
#ifdef DEBUG
// Enable core dumps
struct rlimit corelim;
corelim.rlim_cur = -1;
corelim.rlim_max = -1;
if (setrlimit (RLIMIT_CORE, &corelim) != 0)
{
log_error ("Couldn't set core limit");
}
#endif
分段錯誤。資源不正確的初始化是非常可能的。例如,您可以使用Valgrind進行調試。
這是如何解決沒有產生核心轉儲的問題? – us2012 2013-03-07 14:45:13
分配內存的問題不是語法錯誤。 – user1929959 2013-03-07 14:53:37
如果你的程序以root身份運行(或具有root功能)檢查:
cat /proc/sys/fs/suid_dumpable
,或者如果程序是一個守護進程檢查:
getsebool allow_daemons_dump_core
- 1. 段錯誤 - 核心轉儲
- 2. Genymotion:分段錯誤(核心轉儲)genymotion
- 3. qt app.exec()分段錯誤核心轉儲
- 4. 分段錯誤(核心轉儲)
- 5. 分段錯誤(核心轉儲)C
- 6. 分段錯誤(轉儲核心)
- 7. quickSort分段錯誤(核心轉儲)
- 8. C - 分段錯誤(核心轉儲)
- 9. 分段錯誤(核心轉儲)
- 10. C++的核心轉儲分段錯誤
- 11. 分段錯誤(核心轉儲)
- 12. scipy.interp2d [分段錯誤(核心轉儲)]
- 13. 保持分段錯誤(核心轉儲)
- 14. 分段錯誤(故障核心轉儲)
- 15. 分段錯誤(核心轉儲)C++
- 16. 核心轉儲和分段錯誤
- 17. g ++:分段錯誤(核心轉儲)
- 18. 分段錯誤(核心轉儲)鏈表
- 19. 分段錯誤(核心轉儲)後果
- 20. 分段錯誤(核心轉儲)
- 21. PyQt5分段錯誤(核心轉儲)
- 22. 核心轉儲文件沒有生成分段錯誤
- 23. 錯誤段錯誤(核心轉儲)
- 24. 分割錯誤(核心轉儲)錯誤
- 25. 分段錯誤(核心轉儲)。沒有編譯錯誤。搜索論壇
- 26. C++鏈表實現分段錯誤(核心轉儲)錯誤
- 27. 鏈接列表錯誤「分段錯誤」核心轉儲
- 28. 分段錯誤(核心轉儲)代碼顯示此錯誤
- 29. 分段錯誤(核心轉儲)錯誤與快速排序
- 30. Sinatra App中的分段錯誤(核心轉儲)錯誤
Mayby首先我們看一些代碼? – Blood 2013-03-07 13:47:45
這很可能是一個空指針或訪問數組之外。 – QuentinUK 2013-03-07 13:48:22
在調試器中運行該程序,以便在故障發生時您會中斷。 – unwind 2013-03-07 13:48:40