2010-02-09 4 views
0

Je suis nouveau au développement dans Eclipse/CDT, et pas très expérimenté avec gcc/gdb.CDT, SCons et débogage avec attachement

Mon projet (une bibliothèque partagée) est construit dans Eclipse en utilisant SCons. Le .so généré est à la fin du script SCons copié à un autre endroit (c'est peut-être un point important).

Ma demande alors un module d'extension en ce que l'utilisateur doit charger dans l'application hôte. Je veux donc lancer l'application hôte, charger mon plug-in/bibliothèque, puis attacher la session de débogage à l'application hôte (je pense que c'est ce que je suis supposé faire).

J'ai créé une configuration de débogage. J'ai choisi "C/C++ Attach to Application" pour créer ma configuration. Dans l'onglet principal, j'ai défini mon projet, la configuration de construction (en appelant le script SCons), et pour "application C/C++", j'ai mis le chemin d'accès à l'application hôte.

Mais cela ne fonctionne pas. Peut-être à cause de l'emplacement du fichier .so généré. Dans les paramètres Builder, l'emplacement de construction est $ {workspace_loc:/myProjectName}. Je ne comprends pas cette syntaxe, même si je comprends que workspace_loc correspond à la racine de mon projet. Quoi qu'il en soit, iot n'est pas lié là où le fichier SCons génère le fichier .so. Peut-être que c'est la source du problème?

Merci pour votre aide. La documentation Eclipse est assez porr sur ces points.

Mise à jour: Je reçois l'erreur suivante: ptrace: Opération non autorisée.

Répondre

0

Eh bien, en fait, cela fonctionne. Mais pas bien. gdb prend environ 15 secondes pour se connecter au processus hôte.

Après ce délai, je reçois cette trace:

.gdbinit: Aucun fichier ou répertoire. (pas de symboles de débogage trouvés) attachent 25678 (pas de symboles de débogage trouvés) (pas de symboles de débogage trouvés) (pas de symboles de débogage trouvés) (pas de symboles de débogage trouvés) (pas de symboles de débogage trouvés) (pas de symboles de débogage trouvés) (pas de symboles de débogage trouvés) (pas de symboles de débogage trouvés)

Mais je ne peux toujours pas debug: Je dois faire une « reprise », car gdb est arrêté lorsque la pièce jointe est terminée, avec l'application hôte congelé . Donc j'ai pensé que c'était crashé.

J'ai donc encore à trouver pourquoi il est si longtemps à joindre.

+0

J'ai essayé de me tromper avec cet aspect d'éclipse et j'ai eu des erreurs très étranges. Qu'avez-vous rempli pour l'application et le projet dans la configuration de lancement? Quelles étaient vos autres configurations dans la configuration de lancement? –