Forum Linux.débutant Debutant : Probleme avec le gcc

Posté par  .
Étiquettes : aucune
0
15
juin
2005
Bonjour à tous !

J'ai decidé de me mettre a linux pendant les vacances et j'ai donc installé linux Mandriva LE 2005 (Mandrake 10.2 je crois).

Tout c'est bien passé, j'ai même reussi a faire marcher internet mais comme je souhaite developper qques programmes en C. J'ai besoin du compilateur gcc

1er problème : Quand je tape gcc dans la console depuis n'importe quel repertoire il me dit "commande not found"

Pourtant j'ai été voir les packages deja installé et il y est sous le nom de gcc-cpp-3.4.3-7mdk.
Lorsque j'essai de l'installer j'obtient ce message d'erreur : "/lib/cpp is needed by (installed) xorg-x11-6.8.2-7mdk" donc impossible de desinstaller ce gcc et par consequent je ne peux pas utiliser le rpm fourni avec la distribution puisque quand je lance ce rpm il m'indique le package est deja installé d'ou probleme ? image : confus

Mon Kernel est le : 2.6.11-6mdk
J'espere que vous pourrez m'aider, je suis vraimennt tout nouveau dans le domaine !
  • # urpmi ?

    Posté par  . Évalué à 2.

    Un urpmi gcc devrait t'installer tous les paquetages dont tu as besoin.

    Si ce sont des programmes en C que tu veux compiler alors tu n'as pas besoin de l'extension cpp...
    • [^] # Re: urpmi ?

      Posté par  (site web personnel) . Évalué à 2.

      Je crois que si, car cpp veut dire C Pre-Processor, pour autant que je le sache. Le complilateur c++ s'appelle g++.
    • [^] # Re: urpmi ?

      Posté par  . Évalué à 1.

      J'ai essayé de faire urpmi gcc mais c'est la qu'il me met que "tout les packages sont installés" !

      Il y a une ligne de commande speciale pour utiliser le gcc ?
      J'ai egalement essayé de faire urpme gcc pour desinstaller et il me met le meme message qu'auparavant
      "/lib/cpp is needed by (installed) xorg-x11-6.8.2-7mdk"

      Je sais pas trop quoi faire ??
      • [^] # Re: urpmi ?

        Posté par  (site web personnel) . Évalué à 1.

        en tant que root, exécute la commande :
        ln -sf /usr/bin/cpp /lib/cpp
      • [^] # Re: urpmi ?

        Posté par  (site web personnel) . Évalué à 2.

        Une methode un peut barbare consiterais a voir si urpmi te permet de forcer l'installation et de tenter le coup.

        Mais c 'est pas sur qu'il le fasse et je ne garantie rien quand a la stabiliter du resultat voir du systeme apres un coup comme ca.
    • [^] # Re: urpmi ?

      Posté par  . Évalué à 1.

      Juste une petite précision, cpp, ça signifie "C PreProcessor" et c'est donc tout à fait requis
      pour développer des programmes en C.

      Voir http://www.rpmfind.net/linux/rpm2html/search.php?query=gcc-cpp&(...) pour s'en convaincre.
      • [^] # Re: urpmi ?

        Posté par  . Évalué à 2.

        Je suis convaincu par votre science du compilo !

        Perso, cpp m'évoquait les extensions que je donnais à mes sources c++, alors excusez la confusion (naïve).
  • # whereis

    Posté par  . Évalué à 1.

    Que donne whereis gcc ?
    • [^] # Re: whereis

      Posté par  . Évalué à 1.

      Alors whereis ggc me donne comme reponse

      "gcc: /usr/lib/gcc"
      cela veut dire que le gcc est bien installé mais quand j'essaie de faire la commande gcc depuis n'importe quel repertoire ca me met toujours command not found !

      et la commande ln -sf /usr/bin/cpp/lib/cpp ne fait rien de special, elle sert a faire quoi ?
      • [^] # Re: whereis

        Posté par  . Évalué à 1.

        D'ailleurs quand je vais dans le reprtoire /usr/lib/gcc
        Il se trouve un repertoire qui se nomme x86_64-mandrake-linux-gnu avec a l'interieur un fichier executable "cc1.exe" il n'y a rien d'autre a part ca
        • [^] # Re: whereis

          Posté par  (site web personnel) . Évalué à 1.

          Il devrait y avoir un certain nombre d'autres choses dans ce répertoire. CVhez moi, j'ai :

          $ ls /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.4
          32 hardened.specs libgcc.a libstdc++.so.6
          crtbegin.o include libgcc_eh.a libstdc++.so.6.0.3
          crtbeginS.o install-tools libgcc_s.so libsupc++.a
          crtbeginT.o libfrtbegin.a libgcc_s.so.1 libsupc++.la
          crtend.o libg2c.a libgcov.a specs
          crtendS.o libg2c.la libstdc++.a vanilla.specs
          hardenednopie.specs libg2c.so libstdc++.la
          hardenednopiessp.specs libg2c.so.0 libstdc++_pic.a
          hardenednossp.specs libg2c.so.0.0.0 libstdc++.so
      • [^] # Re: whereis

        Posté par  (site web personnel) . Évalué à 1.

        il faut un espace :
        ln -sf /usr/bin/cpp /lib/cpp
        Cela crée un lien dans /lib vers /usr/bin/cpp
        Si tu as toujours le messahe /lib/cpp manquant, c'est que /usr/bin/cpp n'existe pas et que les paquetages nécessaires ne sont pas installés.

        essaie aussi "file /usr/bin/gcc" ou "ls -l /usr/bin/gcc", il se peut que ce fichier ne soit pas le véritable compilateur.
        • [^] # Re: whereis

          Posté par  . Évalué à 1.

          Je viens de faire toute ces commandes

          Et je crois que le repertoire /usr/bin/cpp n'existe pas
          Il me met a chaque coup "no such file or directory" ...
          donc les packages necessaires ne sont pas installés mais je les installe comment ?
          Sachant que le message d'erreur de desinstallation n'a tjs pas disparu donc pas moyen de desinstaller
      • [^] # Re: whereis

        Posté par  . Évalué à 1.

        Normalement sous Mandriva, gcc est /usr/bin/gcc-3.4.3
        et /usr/bin/gcc est un lien vers /etc/alternatives/gcc qui est un lien vers /usr/bin/gcc-3.4.3. As-tu ca aussi ? Si oui, /usr/bin n'est pas dans ton PATH
        • [^] # Re: whereis

          Posté par  . Évalué à 1.

          Non je n'ai rien de tout ca ... Vraiment bizarre
          Aucun des repertoires que tu cite n'existent
          dans etc/alernatives il n'y a pas de repertoire concernant gcc et dans /usr/bin non plus ...
          • [^] # Re: whereis

            Posté par  . Évalué à 1.

            Par contre info importante dans les repertoires /etc/alternatives/ et /usr/bin/ j'ai les repertoires nommés cpp-3.4.3 qui donne exactement les differentes liaisons que tu cite ??

            Mais c'est quoi la diifference entre cpp et gcc ?
            • [^] # Re: whereis

              Posté par  . Évalué à 1.

              Apparemment tu n'as installe que gcc-cpp, ca ne suffit pas.
              Va dans drakconf>installer un logiciel
              tapes gcc, clique tout et installe
          • [^] # Re: whereis

            Posté par  . Évalué à 1.

            En fait, au vu d'un de tes posts plus haut tu as une machine 64 bits, c'est vraisemblablement fait differemment dessus.
            Va dans drakconf > gestionnaire de logiciels > logiciels installes
            tape gcc et affiche le detail des fichiers installes a droite (au lieu de la simple description)
            • [^] # Re: whereis

              Posté par  . Évalué à 1.

              Alors dans fichiers ca donne ca :

              Fichiers :
              ‎/lib/cpp
              ‎/usr/bin/cpp-3.4.3
              ‎/usr/lib/gcc/x86_64-mandrake-linux-gnu/3.4.3/cc1
              ‎/usr/share/man/man1/cpp.1.bz2

              et snuite j'ai essayé de taper cpp -v 3.4.3 et ca donne ca

              Using built-in specs.
              Configured with: ../configure --prefix=/usr --libexecdir=/usr/lib --with-slibdir=/lib64 --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --enable-long-long --enable-__cxa_atexit --enable-clocale=gnu --disable-libunwind-exceptions --enable-languages=c,c++,ada,f77,objc,java --host=x86_64-mandrake-linux-gnu --with-system-zlib
              Thread model: posix
              gcc version 3.4.3 (Mandrakelinux 10.2 3.4.3-7mdk)
              /usr/lib/gcc/x86_64-mandrake-linux-gnu/3.4.3/cc1 -E -quiet -v - -mtune=k8
              ignoring nonexistent directory "/usr/lib/gcc/x86_64-mandrake-linux-gnu/3.4.3/include"
              ignoring nonexistent directory "/usr/lib/gcc/x86_64-mandrake-linux-gnu/3.4.3/../../../../x86_64-mandrake-linux-gnu/include"
              #include "..." search starts here:
              #include <...> search starts here:
              /usr/local/include
              /usr/include
              End of search list.
              • [^] # Re: whereis

                Posté par  . Évalué à 1.

                Tu n'as installe que gcc-cpp, installe les autres trucs (tape gcc dans rpmdrake)
                • [^] # Re: whereis

                  Posté par  . Évalué à 1.

                  Merci !

                  Tu avais raison en fait j'avais installer que gcc-cpp. J'ai eu pas mal de mal a trouver le rpm pour le gcc il n'etais pas sur le CD c'est pour ca que ca ne marchait pas.

                  Mais maintenant ca marche niquel, j'ai essayé avec un ptit programme et la compilation c'est bien passée !
                  Merci encore !

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.