如何安装 sigsegv glibc 模块

How to install sigsegv glibc module

提问人:Bryon 提问时间:5/18/2023 最后编辑:Employed RussianBryon 更新时间:5/20/2023 访问量:73

问:

我正在尝试捕获分段错误,旧的 LD_PRELOAD 方法已在 2022 年弃用 (https://www.marcusfolkesson.se/blog/libsegfault/)

我正在阅读有关这个新贡献 sigsegv 的信息,并想使用它。但是,我无法安装该库。https://lists.gnu.org/archive/html/bug-gnulib/2021-05/msg00072.html

我正在运行 Fedora,但无济于事(感谢 ChatGPT :)sudo dnf install -y libsigsegv-dev

我在哪里可以找到这个库,你如何在 Fedora 上安装它? 谢谢

linux 分段错误 fedora ld-preload gnulib

评论


答:

0赞 Bruno Haible 5/20/2023 #1

确实有两种选择可以在 Unix 平台上轻松捕获 SIGSEGV:

  • 使用 Gnulib 模块。Gnulib 文档描述了如何将其集成到软件包的构建系统中。sigsegv

  • 使用 libsigsegv 作为预安装的库。

在这两种情况下,请在包中,并使用函数和/或 .#include <sigsegv.h>sigsegv_install_handlerstackoverflow_install_handler

评论

0赞 Bryon 5/21/2023
嗨,布鲁诺。谢谢你花时间帮助我。我确实查看了您引用的文档。然后(就在刚才我再看一遍)除了关于 signal.h 的讨论之外,我没有找到 sigsegv 的参考。我错过了什么吗?另外 - 在 Fedora 上安装它的方法是什么(这是个问题)?
0赞 Bruno Haible 5/21/2023
并非每个 Gnulib 模块都有 HTML 格式的文档。对于 sigsegv 模块,您需要查看 sigsegv.in.h 文件,以了解如何使用该模块。
0赞 Bryon 5/22/2023
谢谢@bruno。现在我知道去哪里看了。所以你的答案是部分正确的,因为它没有记录在我能找到的任何地方(甚至没有在PDF版本中)。但我有足够的时间开始实验。再次感谢