12
votes

Comment obtenir GDB Travailler avec Eclipse CDT sous Windows (échoue à la recherche de code source)

J'ai installé Cygwin (le dernier 1.7.xx?), puis installé Eclipse CDT (Juno).

Lorsque j'ai essayé de construire un projet World Hello, malgré l'Eclipse identifiant que Cygwin a été installé, cela n'a pas fonctionné.

donc j'ai ajouté manuellement C: \ Cygwin \ bin sur le chemin, qui a trouvé tous les exécutables en cygwin, y compris g ++, faire de la LD, etc.

Maintenant, Eclipse peut construire le projet, mais lors du débogage, GDB démarre et ne trouve pas le code source. Il prétend qu'il ne peut pas trouver:

/cygdrive/c/users/me/workspace/test1/test1.cc . Même si c'est exactement là où c'est. C'est comme si le système d'annuaire de Cygwin ne fonctionne pas.

Je peux charger manuellement la source de:

C: \ utilisateurs \ me \ workspace \ test1 \ test1.cc

Et le débogueur fonctionne, mais la prochaine fois que je commence un nouveau projet, je dois le refaire. Comment indiquez-vous au combo Eclipse / Cygwin de trouver correctement le code source?

Alternativement, MINGW est-il plus facile? J'ai connu des problèmes similaires avec Eclipse en voyant que Mingw est là, mais construit l'échec car il ne trouve pas l'exécutable.


2 commentaires

Vous voudrez peut-être reformuler la question de montrer la vraie question que vous souhaitez poser.


C'est ridicule. La question est de savoir comment obtenir l'éclipse correspondre bien à WTIH CYGWIN afin que le débogueur fonctionne sans avoir manuellement à le dire manuellement lorsque chaque fichier source est à chaque fois. Cela me semble assez évident de lire ma question. Si MINGW est une option, comment cela fonctionne-t-il, car j'ai eu des problèmes similaires.


5 Réponses :


2
votes

J'utilise Mingw + CDT, et cela me donne une grande satisfaction. Je l'ai installé plusieurs fois et je n'ai jamais eu de désaccord. Pas grand chose à configurer que ce que vous avez fait avec Cygwin. Téléchargez l'éclipse pour les développeurs C / C ++ (probablement ce que vous avez fait) pour obtenir CDT (chaîne d'outils MINGW -> GDB + GCC) directement opérationnel. Définissez votre \\ mingw \ bin \ dans votre page et que vous devriez être prêt à partir ...

Remarque: comme Cygwin, Mingw fournit une coque de type Linux.

Pour Mingw-64, les constructions prêtes à l'emploi sont un peu plus difficiles à localiser. Voir ici .


2 commentaires

J'aimerais toujours savoir comment réparer le problème de Cygwin, mais pour l'instant, le programme d'installation de Mingw a fait ce travail.


Vous avez oublié de vous dire que, pour des options complètes 64 bits ( -m64 , ...), vous aurez besoin mingw-64 . Voir le lien au bas de ma réponse.



0
votes

Regardez la configuration du "chemin de recherche de la source commune" ici: http://wyding.blogspot.dk/2009/04/setup-cycyclwin-toolchain-in-eclipse-cdt.html


0 commentaires

16
votes

Voici comment je l'ai fait fonctionner.

  1. i goto window ==> Préférences ==> C / C ++ ==> DEBUG ==> Chemin de recherche Source
  2. I Ajouter une cartographie du chemin: Source de projet
  3. sur le côté gauche, je mets le chemin que Cygwin attend, c'est-à-dire la maison \ myName \ projets et sur le côté droit, je mettez le chemin Windows, c'est-à-dire C: \ Cygwin \ Home \ MyName \ Projets

    Puis quand je le débogé, il trouve l'amende du fichier source.


2 commentaires

Existe-t-il une façon de partager ce paramètre avec d'autres fichiers .Projecteurs?


@Danijel, oui. Considérant que tous vos projets résident dans votre dossier Eclipse Workspace, carportez simplement la voie de l'espace de travail Eclipse de Cygwin vers votre chemin Windows Eclipse Workspace. Tous les projets de ce chemin résolvent correctement les fichiers source.



12
votes

Aller à Windows-> Préférences-> C / C ++ -> Débogou -> Chemin de recherche source. Ajouter après «mappage de chemin».

\cygdrive\c -> c:\


0 commentaires

3
votes

Bien que ci-dessus reçoive de bonnes réponses, mais cela pourrait toujours ne pas résoudre le problème parfois si

​​Supposons que vous installiez Cygwin en C: mais votre espace de travail Eclipse est en D: alors il y a un problème dans votre montage

Tout ce que vous devriez faire est, ouvrez la coquille Cygwing et le type "Mont" pour obtenir ce qui suit: P>

 1. goto Window ==> Preferences ==> C/C++ ==> Debug ==> Source Lookup Path
 2. Add a Path Mapping: Project Source
 3. On the left side put "cygdrive\d",  & on the right put : "D:\"


0 commentaires