2009-04-15 5 views
3

J'ai des sondes dtrace personnalisées dans une bibliothèque C, et lorsque vous reliez et utilisez la bibliothèque avec une application C, mes sondes fonctionnent bien, mais quand elles sont liées à C++, elles ne peuvent pas les trouver. La raison semble être à cause du mangling C++, et essayer de le faire fonctionner est devenu une chasse au canard.Définition de mes propres sondes avec Dtrace en C++

Des idées?

Remarque: L'utilisation gcc

Répondre

1

Jusqu'à présent, j'ai trouvé ces "utiles" liens

Using DTrace to Profile and Debug A C++ Program

Using DTrace SDT provider with C++

mais ils ont pas permis de résoudre mes problèmes.

Plus tard, je trouve ces articles:

User-land tracing gets better and better // Cela a été très utile

Putting developer-defined DTrace probe points in an application

Dtrace Using SDT probes // pdf qui a aidé à comprendre certains détails, mais l'information est vieille

Fondamentalement tout se résume à utiliser dtrace -h pour les fichiers d'en-tête de ceux sondes.d

+0

J'ai trouvé le lien "User-land traçage de mieux en mieux" inestimable. –

1

Avez-vous essayé extern "C" { ... } lors de la déclaration des fonctions C?

Questions connexes