我在C库中有一些自定义dtrace探针,当链接和使用带有C应用程序的库时,我的探针工作正常,但是当与C ++链接时,它说它无法找到它们。原因似乎是因为C ++的破坏,并且试图让它发挥作用已成为一种追逐。
有什么想法吗?
注意:使用gcc
答案 0 :(得分:1)
到目前为止,我发现了这些“有用的”链接
Using DTrace to Profile and Debug A C++ Program
Using DTrace SDT provider with C++
但他们没有解决我的问题。
后来我发现了这些文章:
User-land tracing gets better and better //这非常有用
Putting developer-defined DTrace probe points in an application
Dtrace Using SDT probes // pdf有助于了解一些细节,但信息已经过时了
基本上,这一切都归结为使用dtrace -h从一个探测器的头文件。
答案 1 :(得分:1)
在声明C函数时是否尝试extern "C" { ... }
?