我在一份C库中有一些自定义的dtrace探针,在将该库与C应用程序进行链接和使用时,我的探针能够正常工作。然而,当它与C++一起链接时,会提示找不到它们。原因似乎在于C++的名称重载,而要使其工作却变成了一场鸭子追赶战。
您有什么想法吗?
注意:使用gcc。
到目前为止,我发现以下这些“有用”的链接:
但它们并没有解决我的问题。
后来我找到了下面这些文章:
用户空间跟踪越来越好//这篇文章非常有帮助
Dtrace 使用 SDT 探针//这个 PDF 帮助理解了一些细节,但信息比较旧
基本上这都归结于使用 dtrace -h 命令从 ones probes.d 头文件中获取信息。
extern "C" { ... }
吗?