Question

Je souhaite élargir mes horizons de programmation à Linux.Un bon ensemble d’outils de base fiables est important, et quoi de plus basique qu’un IDE ?

J'ai pu trouver ces sujets SO :

je ne cherche pas un poids léger IDE.Si un IDE en vaut la peine, alors je le paierai, il n'est donc pas nécessaire qu'il soit gratuit.

Ma question alors :

À quoi bon un IDE de programmation C++ disponible pour Linux ?

Les minimums sont assez standards :coloration syntaxique, complétion du code (comme intelligence ou son homologue Eclipse) et le débogage intégré (par exemple, les points d'arrêt de base).

Je l'ai recherché moi-même, mais il y en a tellement qu'il est presque impossible de séparer manuellement les bons des mauvais, surtout pour quelqu'un comme moi qui a peu d'expérience en codage C++ sous Linux.Je sais que Eclipse prend en charge le C++, et j'aime vraiment cet IDE pour Java, mais est-il bon pour le C++ et y a-t-il quelque chose de mieux ?

Le deuxième article contient en fait de bonnes suggestions, mais ce qui me manque, c'est ce qui rend exactement l'IDE suggéré si bon pour l'utilisateur, quels sont ses (dés)avantages ?

Peut-être que ma question devrait donc être :

Quel IDE proposez-vous (au vu de vos expériences), et pourquoi ?

Était-ce utile?

La solution

Initialement:confusion

Lors de la rédaction initiale de cette réponse, j'étais récemment passé de Visual Studio (avec des années d'expérience) à Linux et la première chose que j'ai faite a été d'essayer de trouver un IDE raisonnable.A l’époque c’était impossible :aucun bon IDE n’existait.

Épiphanie:UNIX est un IDE. Tout.1

Et puis j'ai réalisé que l'IDE sous Linux, c'est la ligne de commande avec ses outils :

  • Vous configurez d’abord votre shell
  • et votre éditeur ;choisissez votre poison - les deux sont à la pointe de la technologie :

En fonction de vos besoins, vous devrez alors installer et configurer plusieurs plugins pour que l'éditeur fonctionne correctement (c'est ce qui est ennuyeux).Par exemple, la plupart des programmeurs sur Vim bénéficieront de Tu me complètes plugin pour la saisie semi-automatique intelligente.

Une fois cela fait, le shell est votre interface de commande pour interagir avec les différents outils — Débogueurs (gdb), Profileurs (gprof, valgrind), etc.Vous configurez votre environnement de projet/build en utilisant Faire, CMake, SerpentFaire ou l'une des différentes alternatives.Et vous gérez votre code avec un système de contrôle de version (la plupart des gens utilisent Git).Vous utilisez également tmux (auparavant également écran) pour multiplexer (= pensez à plusieurs fenêtres/onglets/panneaux) et conserver votre session de terminal.

Le fait est que, grâce au shell et à quelques conventions d'écriture d'outils, tout cela s'intégrer les uns aux autres.Et de cette façon le shell Linux est un environnement de développement véritablement intégré, complètement à égalité avec les autres IDE modernes.(Cela ne signifie pas que les IDE individuels n'ont pas de fonctionnalités qui peuvent manquer à la ligne de commande, mais l'inverse est également vrai.)

À chacun le sien

Je ne saurais trop insister sur l’efficacité du flux de travail ci-dessus une fois que vous en avez pris l’habitude.Mais certaines personnes préfèrent simplement les éditeurs graphiques, et au cours des années qui ont suivi la rédaction de cette réponse, Linux a acquis une suite d'excellents IDE graphiques pour plusieurs langages de programmation différents (mais pas, à ma connaissance, pour C++).Essayez-les même si - comme moi - vous finissez par ne pas les utiliser.Voici juste une petite sélection biaisée :

Gardez à l’esprit que cette liste est loin d’être complète.


1 J'ai volé ce titre dans le commentaire de dsm.

2 J'avais l'habitude de faire référence à Vim ici.Et même si Vim simple est encore plus que performant, Neovim est un redémarrage prometteur, et il a modernisé quelques vieilles verrues.

Autres conseils

Mon préféré est le CodeLite 2.x IDE.

voir: http://www.codelite.org

La décision d'utiliser CodeLite était basée sur une recherche concernant l'IDE C++ suivant pour Linux :

  • Eclipse Galileo avec le plugin CDT
  • NetBeans 6.7 (qui est également la base de l'IDE SunStudio)
  • KDévelopper4
  • CodeBlocks 8.02
  • CodeLite 2.x

Après tout, j'ai décidé d'utiliser CodeLite 2.x.

Ci-dessous, j'ai répertorié quelques avantages et inconvénients concernant les IDE C++ mentionnés.Attention, cela ne reflète que mon opinion personnelle !

MODIFIER:quel dommage que SOF ne supporte pas les tableaux, je dois donc écrire en paragraphes...

Eclipse Galileo avec le plugin CDT

Avantages:

  • raisonnable rapide
  • prend également en charge Java, Perl (avec le plugin E.P.I.C)
  • couramment utilisé et bien entretenu
  • également disponible pour d'autres versions de système d'exploitation (Windows, MacOS, Solaris, AIX (?))

Les inconvénients:

  • L'interface graphique est très déroutante et quelque peu incohérente - pas très intuitive du tout
  • poids lourd
  • Ne prend en charge que CVS (AFAIK)

NetBeans 6.7 (notez que c'est également la base de l'IDE SunStudio)

Avantages:

  • l'une des interfaces graphiques les plus intuitives que j'ai jamais vues
  • prend également en charge Java, Python, Ruby
  • intègre CVS, SVN, Mercurial
  • couramment utilisé et bien entretenu
  • également disponible pour d'autres versions de système d'exploitation (Windows, MacOS, Solaris)

Les inconvénients:

  • extrêmement lent
  • poids lourd
  • utilise des espaces pour l'indentation, ce qui n'est pas la politique de mon travail.Je suis sûr que c'est configurable, mais je n'ai pas trouvé comment procéder.

KDévelopper4 (note:je n'ai pas fait beaucoup de tests dessus)

Avantages:

  • couramment utilisé sous Linux
  • intègre CVS, SVN, Mercurial

Les inconvénients:

  • l'interface graphique a l'air un peu démodée
  • poids lourd
  • très spécifique à l'environnement KDE

CodeBlocks 8.02 (note:je n'ai pas fait beaucoup de tests dessus)

Avantages:

  • raisonnable rapide

Les inconvénients:

  • l'interface graphique a l'air un peu démodée (même si elle a un bel écran de démarrage)
  • les polices dans l'éditeur sont très petites
  • certaines icônes (par ex.les icônes liées au débogueur (démarrage/pas à pas) sont très petites
  • pas d'intégration du contrôle de source

CodeLite 2.x (note:c'est mon préféré)

Avantages:

  • la meilleure interface graphique moderne et intuitive que j'ai vue sous Linux
  • poids léger
  • raisonnable rapide
  • intègre SVN
  • également disponible sur d'autres versions de système d'exploitation (Windows, MacOS, Solaris (?))

Les inconvénients:

  • pas d'intégration CVS (c'est important pour moi car je dois l'utiliser au travail)
  • pas de support pour Java, Perl, Python (ce serait bien de l'avoir)
  1. Code ::Blocs
  2. CDT Eclipse

Bientôt, vous constaterez que les IDE ne suffisent pas et que vous devrez de toute façon apprendre la chaîne d'outils GCC (ce qui n'est pas difficile, au moins apprendre les fonctionnalités de base).Mais il n’y a aucun mal à réduire les difficultés de transition avec les IDE, IMO.

Une réponse rapide, juste pour ajouter un peu plus de connaissances sur ce sujet :
Vous devez absolument vérifier NetBeans.Netbeans 6.7 possède les fonctionnalités suivantes :

  • Projets et modèles C/C++ :Prend en charge la mise en surbrillance de la syntaxe, l'achèvement automatique du code, l'indentation automatique.
  • Il dispose d'un débogueur C/C++
  • Prend en charge les configurations du compilateur, Configuration Manager et MakeFile Support (avec un assistant).
  • Il comporte une fenêtre Classes, une fenêtre Utilisations et une fenêtre (ou panneau) de navigation dans les fichiers.
  • UN Vue d'expansion des macros, et aussi info-bulles.
  • Soutien Développement QT.

Je pense que c'est une substitution parfaite (et bien meilleure) de Visual Studio et un très bon outil pour apprendre le C/C++.

Bonne chance!

Au moins pour les projets spécifiques à Qt, le Créateur Qt (de Nokia/Trolltech/Digia) est très prometteur.

pourriez-vous clarifier un peu plus comment cela s'est passé pour vous, ce que vous deviez changer.Peut-être pourriez-vous m'orienter dans la bonne direction en fournissant des liens vers les informations que vous avez utilisées.

Ma première source était en fait les outils man pages.Tapez simplement

$ man toolname

sur la ligne de commande ($ voici une partie de l'invite, pas de l'entrée).

Selon la plateforme, ils sont assez bien rédigés et peuvent également être trouvés sur Internet.Dans le cas d make, j'ai effectivement lu l'intégralité Documentation ce qui a pris quelques heures.En fait, je ne pense pas que cela soit nécessaire ou utile dans la plupart des cas, mais j'avais quelques exigences particulières lors de mes premières missions sous Linux qui nécessitaient un makefile sophistiqué.Après avoir écrit le makefile, je l'ai donné à un collègue expérimenté qui a effectué quelques ajustements et corrections mineurs.Après ça, je savais à peu près make.

J'ai utilisé GVIM parce que j'y avais une certaine expérience (mais pas beaucoup), je ne peux rien dire du tout sur Emacs ou ses alternatives.Je trouve que ça aide vraiment de lire ceux des autres .gvimrc fichier de configuration.Beaucoup de gens l'ont mis sur le Web.Voici le mien.

N'essayez pas de maîtriser tous les binutils d'un coup, il y a trop de fonctions.Mais obtenez un aperçu général afin de savoir où chercher lorsque vous aurez besoin de quelque chose à l'avenir.Toi devrait, cependant, connaissez tous les paramètres importants pour g++ et ld (l'outil de liaison GCC qui est invoqué automatiquement, sauf en cas d'interdiction explicite).

Je suis également curieux de savoir si vous avez la complétion du code et la coloration syntaxique lorsque vous codez ?

Mise en évidence de la syntaxe :oui, et bien meilleur que Visual Studio.Achèvement du code :Oui-ouais.Tout d'abord, je dois admettre que je n'ai pas utilisé la complétion de code C++, même dans Visual Studio, car (par rapport à VB et C#) ce n'était pas assez bon.Je ne l'utilise plus souvent maintenant mais néanmoins, GVIM a prise en charge de la complétion de code natif pour C++.Combiné avec le balises c bibliothèque et un plug-in comme liste de tags c'est presque un IDE.

En fait, ce qui m'a lancé, c'est un article par Armin Ronacher.Avant de lire le texte, regardez les captures d’écran à la fin !

devez-vous d'abord compiler avant d'obtenir des erreurs (de syntaxe) ?

Oui.Mais c'est la même chose pour Visual Studio, n'est-ce pas (je n'ai jamais utilisé Whole Tomato) ?Bien sûr, la coloration syntaxique vous montrera les parenthèses qui ne correspondent pas, mais c'est à peu près tout.

et comment déboguer (pensez encore une fois aux points d'arrêt, etc.) ?

j'utilise gdb qui est un outil en ligne de commande.Il existe également une interface graphique appelée DDD. gdb est un outil de débogage moderne et peut faire tout ce que vous pouvez faire dans un IDE.La seule chose qui m'ennuie vraiment, c'est de lire une trace de pile car les lignes ne sont ni indentées ni formatées, il est donc très difficile de scanner les informations lorsque vous utilisez beaucoup de modèles (ce que je fais).Mais ceux-ci encombrent également la trace de la pile dans les IDE.

Comme je l'ai dit, j'ai eu le « plaisir » de faire mes premiers pas dans le langage de programmation Java en utilisant le bloc-notes Windows et le compilateur Java en ligne de commande au lycée, et c'était, ..eh bien, un cauchemar !certainement quand j'ai pu le comparer avec d'autres cours de programmation que j'avais à l'époque et où nous avions des IDE décents

Vous ne devriez même pas essayer de comparer un éditeur moderne et complet comme Emacs ou GVIM au Bloc-notes.Le bloc-notes est un embelli TextBox contrôle, et cela fait vraiment toute la différence.De plus, travailler en ligne de commande est une expérience très différente sous Linux et Windows.Les fenêtres cmd.exe est gravement infirme.PowerShell est bien meilleur.

/MODIFIER:Je devrais mentionner explicitement que GVIM a une édition par onglets (comme dans la navigation par onglets, pas onglets contre espaces) !Il m'a fallu du temps pour les trouver même s'ils ne sont pas du tout cachés.Tapez simplement :tabe au lieu de simple :e lors de l'ouverture d'un fichier ou de la création d'un nouveau, et GVIM créera un nouvel onglet.Le basculement entre les onglets peut se faire à l'aide du curseur ou de plusieurs raccourcis différents (selon la plateforme).La clé gt (taper g, alors t en mode commande) devrait fonctionner partout et passer à l'onglet suivant, ou à l'onglet n°. n si un numéro était donné.Taper :help gt pour obtenir plus d'aide.

Je ne veux pas répéter une réponse, mais je pense que je peux en ajouter un peu plus.

Édition glissante est un excellent IDE.

Il prend bien en charge les grandes bases de code sans ralentir ni passer tout son temps à indexer.(C'est un problème que j'ai eu avec le cdt d'Eclipse).En fait, la vitesse de Slickedit est probablement ce qu'il y a de plus agréable.
La complétion du code fonctionne bien et il existe un grand nombre d'options pour des choses comme le formatage automatique, l'embellissement et la refactorisation.
Il a un débogage intégré.
Il prend en charge les plug-ins et une communauté assez active qui les crée.
En théorie, vous devriez être capable de bien vous intégrer avec les personnes qui effectuent les tâches traditionnelles du makefile, car cela vous permet de créer un projet directement à partir d'un seul, mais cela n'a pas fonctionné aussi bien que je l'aurais souhaité lorsque je l'ai essayé.
En plus de Linux, il existe des versions Mac et Windows, si vous en avez besoin.

En tant qu'ancien utilisateur d'UNIX, j'utilise toujours Emacs.Mais cela nécessite une courbe d'apprentissage assez longue et abrupte, donc je ne suis pas sûr de pouvoir le recommander aux nouveaux arrivants.

Il n’existe vraiment pas de « bon » IDE pour Linux.Eclipse n'est pas très bon pour le C/C++ (CDT s'améliore, mais n'est pas encore très utile).Les autres ne disposent pas de toutes les fonctionnalités que vous recherchez.

Il est vraiment important d'apprendre comment fonctionnent tous les outils individuels (gcc, make, gdb, etc.).Après cela, vous constaterez peut-être que la manière de faire de Visual Studio est très restrictive.

Découvrez Netbeans, il est écrit en Java, vous aurez donc le même environnement quel que soit votre système d'exploitation, et il prend en charge bien plus que le C++.

Je ne vais pas essayer de vous convaincre, car je pense que les IDE peuvent être un choix très personnel.Pour moi, cela améliore ma productivité en étant rapide, en prenant en charge les langages dans lesquels je code et en possédant les fonctionnalités standard que vous attendez d'un IDE.

Juste un petit suivi pour cette question...

Cela fait un mois que j'ai commencé à utiliser VIM comme mon outil principal «GUI» pour la programmation C ++ dans Linux.Au début, la courbe d'apprentissage était en effet un peu abrupte mais après un certain temps et avec les bonnes options activées et scripts en cours d'exécution J'ai vraiment compris!

J'aime la façon dont vous pouvez façonner Vim pour répondre à vos besoins ;il suffit d'ajouter/modifier mappages de touches Et VIM est transformé en un «IDE» très productif.

La chaîne d'outils pour construire et compiler un programme C ++ sur Linux est également vraiment intuitive.make et g++ sont le Outils que vous utilisez.

Le débogueur ddd n'est cependant pas vraiment bon, mais c'est peut-être parce que je n'ai pas eu le temps de le maîtriser correctement.

Donc, à tous ceux qui sont ou qui cherchaient un bon IDE C ++ en Linux, tout comme je l'étais, votre meilleur pari est avec les outils disponibles standard dans Linux lui-même (VIM, G ++, DDD) et vous devriez vraiment essayer au moins d'utiliser eux, avant de chercher un son autrement ...

Enfin et surtout, je tiens vraiment à remercier Konrad Pour sa réponse ici, cela m'a vraiment aidé à trouver mon chemin dans l'environnement de développement Linux, merci!

je suis aussi pas Fermant cette question, afin que les gens puissent toujours réagir ou peut-être même ajouter de nouvelles suggestions ou ajouts aux réponses déjà très belles ...

je vous recommande de lire L'art de la programmation UNIX.Cela vous incitera à utiliser l’environnement comme IDE.

La réponse la plus courte est :choisissez l'"éditeur" de votre choix, puis utilisez la console GDB ou un simple frontal GDB pour déboguer votre application.Les débogueurs sont livrés avec des IDE sophistiqués tels que Netbeans, c'est nul pour C/C++.J'utilise Netbeans comme éditeur et la console Insight et GDB comme débogueur.

Avec perspicacité, vous disposez d’une belle interface graphique et de la puissance brute de GDB.

Dès que vous vous habituerez aux commandes GDB, vous commencerez à l'aimer car vous pouvez faire des choses que vous ne pourrez jamais faire avec une interface graphique.Vous pouvez même utiliser Python comme langage de script si vous utilisez GDB 7 ou une version plus récente.

La plupart des gens ici ont accordé plus d'attention aux "éditeurs" des IDE.Cependant, si vous développez un gros projet en C/C++, vous pourriez facilement consacrer plus de 70 % de votre temps aux « débogueurs ».Les débogueurs des IDE sophistiqués ont au moins 10 ans de retard sur Visual Studio.Par exemple, Netbenas possède des interfaces très similaires avec Visual Studio.Mais son débogueur présente un certain nombre d'inconvénients par rapport à Visual Studio.

  1. Très lent à afficher même un tableau avec seulement quelques centaines d'éléments
  2. Pas de surbrillance pour la valeur modifiée (par défaut, Visual Studio affiche les valeurs modifiées dans les fenêtres de surveillance en rouge)
  3. Capacité très limitée à afficher la mémoire.
  4. Vous ne pouvez pas modifier le code source puis continuer l'exécution.Si un bug met beaucoup de temps à apparaître, vous souhaitez modifier la source, appliquer les modifications en direct et continuer à exécuter votre application.
  5. Vous ne pouvez pas modifier "l'instruction suivante" pour qu'elle s'exécute.Dans Visual Studio, vous pouvez utiliser « Set Next Statement » pour modifier le mode d’exécution de votre application.Bien que cette fonctionnalité puisse faire planter votre application si elle n’est pas utilisée correctement, elle vous fera gagner beaucoup de temps.Par exemple, si vous constatez que l'état de votre application n'est pas correct, mais que vous ne savez pas ce qui a causé les problèmes, vous souhaiterez peut-être réexécuter une certaine région de vos codes sources sans redémarrer votre application.
  6. Pas de support intégré pour STL tel que vecteur, liste, deque et carte, etc.
  7. Aucun point de surveillance.Vous devez disposer de cette fonctionnalité lorsque vous devez arrêter votre application juste au moment où une variable est modifiée.Les ordinateurs basés sur Intel disposent de points de surveillance matériels afin que les points de surveillance ne ralentissent pas votre système.Cela peut prendre plusieurs heures pour trouver des bogues difficiles à trouver sans utiliser de points de surveillance."Visual Studio" appelle "pointeur de surveillance" comme "Data BreakPoint".

La liste peut être beaucoup plus longue.

J'étais tellement frustré par les inconvénients de Netbeans ou d'autres IDE similaires, que j'ai commencé à apprendre GDB lui-même.J'ai trouvé que GDB lui-même est très puissant.GDB ne présente pas tous les « inconvénients » mentionnés ci-dessus.En fait, GDB est très puissant, il est même meilleur que Visual Studio à bien des égards.Ici, je viens de vous montrer un exemple très simple.

Par exemple, vous avez un tableau comme :

struct IdAndValue
{
  int ID;
  int value;
};


IdAndValue IdAndValues[1000];

Lorsque votre application s'arrête et que vous souhaitez examiner les données dans IdAndValues.Par exemple, si vous souhaitez rechercher les ordinaux et les valeurs dans le tableau pour un « ID » particulier, vous pouvez créer un script comme celui-ci :

define PrintVal 
set $i=0
printf "ID = %d\n", $arg0
while $i<1000
  if IdAndValues[$i].ID == $arg0
    printf "ordinal = %d, value = %d\n", $i, IdAndValues[$i].vaue
    set $i++
  end
end
end

Vous pouvez utiliser toutes les variables de votre application dans le contexte actuel, vos propres variables (dans notre exemple, il s'agit de $i), les arguments passés (dans notre exemple, il s'agit de $arg0) et toutes les commandes GDB (intégrées ou définies par l'utilisateur). ).

Utiliser PrintVal 1 à partir de l'invite GDB pour imprimer les valeurs pour l'ID "1"

Soit dit en passant, NetBeans est livré avec une console GDB, mais en utilisant la console, vous pourriez planter Netbeans.Et je crois que c'est pour cela que la console est masquée par défaut dans NetBeans

Si vous aimez Eclipse pour Java, je suggère Eclipse CDT.Bien que la prise en charge de C/C++ ne soit pas aussi puissante que celle de Java, elle offre toujours la plupart des fonctionnalités.Il possède une fonctionnalité intéressante nommée Managed Project qui facilite le travail avec des projets C/C++ si vous n'avez pas d'expérience avec les Makefiles.Mais vous pouvez toujours utiliser les Makefiles.Je fais du codage C et Java et je suis vraiment content de CDT.Je développe le firmware d'un périphérique embarqué en C et une application en Java qui communique avec ce périphérique, et c'est vraiment sympa d'utiliser le même environnement pour les deux.Je suppose que cela me rend probablement plus productif.

J'utilise "Geany" trouvé bien jusqu'à présent, son IDE rapide et léger.

Parmi les fonctionnalités de Geany figurent:

  • Pliage de codes
  • Sauvegarde de session
  • Fonctionnalités de base de l'IDE telles que la coloration syntaxique, les tabulations, l'indentation automatique et la complétion du code
  • Gestion de projet simple
  • Système de construction
  • Sélecteur de couleurs (étonnamment pratique lors du développement Web)
  • Émulation de terminal embarquée
  • Conseils d'appel
  • Listes de symboles
  • Auto-complétion de constructions courantes (telles que if, else, while, etc.)

J'aime la façon dont les gens manquent complètement la demande de la question initiale concernant un IDE.Linux n'est PAS un IDE.Ce n’est tout simplement pas ce que signifient ces mots.J'ai appris le C et le C++ en utilisant vi, gcc et make, et je ne dis pas que ce ne sont pas des outils adéquats, mais ce ne sont PAS un IDE.Même si vous utilisez des outils plus élaborés comme vim ou emacs ou tout autre éditeur sophistiqué de votre choix, taper des commandes sur une ligne de commande n'est pas un IDE.

De plus, vous savez tous que make existe dans le cadre de Visual Studio, n'est-ce pas ?L'idée selon laquelle un IDE est "limitant" est tout simplement idiote si vous pouvez utiliser l'EDI pour accélérer certaines choses, tout en étant capable de recourir à des éléments de ligne de commande en cas de besoin.

Cela dit, je suggère, comme plusieurs l'ont fait ci-dessus, d'essayer les blocs de code.Il a une mise en évidence du code décente, un moyen assez simple de créer un projet, de le coder, de l'exécuter, etc., qui est le cœur d'un véritable IDE et semble assez stable.Le débogage est nul... Je n'ai jamais vu de débogueur interactif décent dans aucune variante Linux/Unix.gdb, n'est-ce pas.Si vous êtes habitué au débogage de style Visual Studio, vous n’avez pas de chance.

Quoi qu'il en soit, je vais faire mes valises, je sais que la foule Linux à vue unique va le crier et me chasser de la ville en un rien de temps.

make + vim + gdb = un excellent IDE

J'aime assez Ultime++'côté.Il possède certaines fonctionnalités qui ont été conçues pour être utilisées avec leur propre bibliothèque (ce qui, BTW, est une boîte à outils assez intéressante si vous ne souhaitez pas acheter sur GTK+ ou QT), mais il fonctionne parfaitement bien avec les projets C++ généraux.Il fournit une complétion de code décente, une bonne coloration syntaxique, un débogage intégré et toutes les autres fonctionnalités prises en charge par la plupart des IDE modernes.

je suggère vraiment blocs de code.Ce n'est pas aussi lourd qu'Eclipse et il prend en charge le projet Visual Studio.

Peut-être le Projet d'outils Linux pour Eclipse pourrait répondre à vos besoins ?

Le projet Linux Tools vise à proposer un IDE C et C++ complet aux développeurs Linux.Nous nous appuyons sur les fonctionnalités d'édition et de débogage des sources du CDT et intégrons des outils de développement natifs populaires tels que GNU Autotools, Valgrind, OProfile, RPM, SystemTap, GCov, GProf, LTTng, etc.Les projets actuels incluent des visualiseurs et analyseurs de traces LTTng, un éditeur RPM .spec, l'intégration de build Autotools, un outil d'analyse de l'utilisation du tas Valgrind et des outils de profilage d'appels OProfile.

Sous Linux, il existe de nombreux IDE :

Dans mon expérience, les plus précieux sont Éclipse et Créateur Qt.Les deux fournissent toutes les fonctionnalités "standard" (c'est-à-dire la saisie semi-automatique, la coloration syntaxique, le débogueur, l'intégration git).Il convient de noter qu'Eclipse fournit également des fonctionnalités de refactoring, tandis que Qt Creator propose une intégration avec Valgrind et une prise en charge du déploiement sur des cibles distantes.

Aussi le commercial EDI CLion Cela semble plutôt bien (mais je ne l'ai pas beaucoup utilisé).

J'ai entendu dire qu'Anjuta est plutôt pratique pour les utilisateurs de Gnome.J'ai joué un peu avec KDevelop et c'est sympa, mais il manque en quelque sorte de fonctionnalités.Code::Blocks est également très prometteur, et je préfère celui-là.

Sun Studio version 12 est téléchargeable gratuitement (assistance GRATUITE et payante disponible) -- http://developers.sun.com/sunstudio/downloads/thankyou.jsp?submit=%A0FREE+Download%A0%BB%A0.

Je suis sûr que vous disposez d'une prise en charge de la complétion du code et du débogage, y compris la prise en charge des plugins dans cet IDE.

Sun Studio est disponible pour Linux ainsi que Solaris.forums : http://developers.sun.com/sunstudio/community/forums/index.jsp.Forums Sun Studio Linux : http://forum.sun.com/forum.jspa?forumID=855

J'ai hâte d'entendre vos commentaires sur cet outil.

BR,
~UNE

J'ai déjà utilisé Ultimate++ IDE et c'est plutôt bien.

Et puis j'ai remarqué que ce n'est tout simplement pas comme ça qu'on travaille là-bas*, et j'ai tout jeté, j'ai passé quelques jours à lire des manuels, à configurer mon shell (bash), à configurer un environnement GVIM, à apprendre la chaîne d'outils GCC/binutils, make et gdb et a vécu heureux pour toujours.

Je serais plutôt d'accord, mais le problème est aussi un problème de perception :nous oublions à quel point il était difficile de devenir productif dans n'importe quel IDE (ou autre environnement) choisi.Je trouve les IDE (Visual Studio, NetBeans, Eclipse) incroyablement lourds à bien des égards.

En tant qu'ancien utilisateur d'UNIX, j'utilise toujours Emacs.Mais cela a une courbe d'apprentissage assez raide et longue, donc je ne suis pas sûr de le recommander aux nouveaux arrivants.

J'appuierais cela ;utilisez Emacs comme éditeur principal sous Linux et sur MSW (XP2, W2K).Je ne serais pas d'accord sur le fait qu'il a un raide courbe d'apprentissage, mais je dirais qu'en raison du grand nombre de fonctionnalités, il a un long courbe d'apprentissage.Vous pouvez être productif en peu de temps, mais si vous le souhaitez, vous pouvez en apprendre de nouvelles fonctionnalités pour les années à venir.

Cependant, ne vous attendez pas à ce que toutes les fonctionnalités d'Emacs soient disponibles dans les menus déroulants, il y a tout simplement trop de fonctionnalités pour les trouver ici.

Comme je l'ai mentionné, j'utilise GNU Emacs sur MSW depuis des années.Et cela a toujours bien fonctionné avec Visual Studio jusqu'à ma "mise à niveau" vers 2008 ;maintenant c'est parfois retarde plusieurs secondes avant d’actualiser les fichiers à partir du disque.La principale raison de l'édition dans la fenêtre VS est la fonctionnalité de complétion de code "Intellisense".

geany je recommande

Bien que j'utilise Vim, certains de mes collègues utilisent Slick ce qui a l'air plutôt bien.Je ne suis pas sûr du débogage intégré car nous ne pourrions de toute façon pas le faire sur notre projet particulier.

SlickEdit prend en charge la navigation dans de grandes bases de code, avec des références croisées et des sauts de balises.Bien sûr, il contient également des éléments de base tels que la coloration syntaxique et la complétion du code.

J'utilise Eclipse CDT et Qt Creator (pour les applications Qt).

C'est mes préférences.C'est une question très suggestive et il y a autant de réponses qu'il y a de développeurs.:)

SlickModifier.J'utilise et j'adore SlickEdit depuis 2005, à la fois sous Windows et sous Linux.J'ai également de l'expérience avec Visual Studio (5, 6, 2003, 2005) et uniquement avec Emacs et la ligne de commande.J'utilise SlickEdit avec des makefiles externes, certains de mes coéquipiers utilisent SlickEdit, d'autres utilisent Emacs/vi.Je n'utilise pas le débogueur intégré, le contrôle de version intégré, le système de build intégré :Je trouve généralement que trop d’intégration est une vraie douleur.SlickEdit est robuste (très peu de bugs), rapide et intuitif.C'est comme une voiture allemande, une voiture de conducteur.

Les dernières versions de SlickEdit semblent offrir de nombreuses fonctionnalités qui ne m'intéressent pas, j'ai un peu peur que le produit devienne pléthorique et dilué dans le futur.Pour l'instant (j'utilise la V13.0) c'est génial.

Pour moi Ultime++ semble être la meilleure solution pour écrire un programme cross-OS

Si vous utilisez vim depuis longtemps, vous devriez en faire votre IDE.Il existe de nombreux modules complémentaires disponibles.J'en ai trouvé plusieurs très utiles, et je les ai compilés ici, jetez-y un œil.

Et bien plus encore dans la série de trucs et astuces vi/vim là-bas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top