Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème lors de compilation sur XCODE

    25 janvier 2020 à 22:02:32

    Bonsoir, lors de la compilation de mon programme  sur XCODE j'ai un build failed et lorsque je regarde l'erreur j'ai ce message : 

    J'aimerai savoir pourquoi j'ai ceci et comment le regler ? 

    Merci 

    • Partager sur Facebook
    • Partager sur Twitter
      26 janvier 2020 à 3:02:55

      Salut,
      S'agit-il du Xcode de Apple qui fonctionne sur un Mac? Peu de gens programment en C sur Xcode
      Peux-tu nous donner ton code dans un format où on pourra faire un copier-coller? Utilise le bouton <code> si tu peux.
      Intuitivement, le "build failed" est relié au fait que tu aurais des erreurs de compilation. En as-tu?
      Ou bien tu appelles des fonctions qui n'existent pas.

      -
      Edité par PierrotLeFou 26 janvier 2020 à 3:05:41

      • Partager sur Facebook
      • Partager sur Twitter

      Le Tout est souvent plus grand que la somme de ses parties.

        26 janvier 2020 à 9:34:43

        Salut,

        Ce que je vois dans ton log, c'est que tu semble avoir deux fonctions main, une dans exercice 1 et un dans exercice 2. C'est la première ligne du log :

        duplicate symbol '_main' in :

        Bonne continuation.

        • Partager sur Facebook
        • Partager sur Twitter

        Bonhomme !! | Jeu de plateforme : Prototype.

          26 janvier 2020 à 12:27:35

          PierrotLeFou a écrit:

          Salut,
          S'agit-il du Xcode de Apple qui fonctionne sur un Mac? Peu de gens programment en C sur Xcode
          Peux-tu nous donner ton code dans un format où on pourra faire un copier-coller? Utilise le bouton <code> si tu peux.
          Intuitivement, le "build failed" est relié au fait que tu aurais des erreurs de compilation. En as-tu?
          Ou bien tu appelles des fonctions qui n'existent pas.

          -
          Edité par PierrotLeFou il y a environ 9 heures

          Oui c'est celui ci , je suis sous la derniere version de macOS 10.15.2. Aurais-tu d'autres suggestion ? J'ai voulu utilser code blocks sauf que depuis la derniere maj , les logiciels en32 bits ne sont plus executablent sur la dernière version de macos.

          #include <stdio.h>
          int starter = 0;
          int start;
          int main(void) {
              printf("entrer le chiffre 1");
              start = scanf("%d", &starter);
              if (start == 1) {
                  printf("#####\n#\n#\n####\n#\n#\n#\n");
                  printf("dommage\n");
              }
              return 0;
          }
          

          C'est un code vraiment simple pourtant. lol .

          et de plus lorsque que je lance ce script , rien ne s'affiche dans la console.. :(

          drx a écrit:

          Salut,

          Ce que je vois dans ton log, c'est que tu semble avoir deux fonctions main, une dans exercice 1 et un dans exercice 2. C'est la première ligne du log :

          duplicate symbol '_main' in :

          Bonne continuation.

          Oui , j'ai un dossier exercice où chaque fichier correspond à un exercice. Et c'est là que ca fail mais dès que je supprime par exemple l'exercice 2 , ca marche. 





          • Partager sur Facebook
          • Partager sur Twitter
            26 janvier 2020 à 14:47:28

            Normal, il ne peut y avoir qu'une seule fonction main() dans un programme, donc dans un même projet.

            • Partager sur Facebook
            • Partager sur Twitter

            Bonhomme !! | Jeu de plateforme : Prototype.

              26 janvier 2020 à 16:11:04

              drx a écrit:

              Normal, il ne peut y avoir qu'une seule fonction main() dans un programme, donc dans un même projet.


              Ah donc ca veut dire que (dans mon cas ) je dois faire chaque ezxercice dans un fichier different ?
              • Partager sur Facebook
              • Partager sur Twitter
                26 janvier 2020 à 17:02:28

                Non, dans UNE FONCTION différente.

                int main(void)
                {
                   exercice1();
                   exercice2();
                
                   return 0;
                }



                • Partager sur Facebook
                • Partager sur Twitter

                Bonhomme !! | Jeu de plateforme : Prototype.

                  26 janvier 2020 à 20:07:47

                  drx a écrit:

                  Non, dans UNE FONCTION différente.

                  int main(void)
                  {
                     exercice1();
                     exercice2();
                  
                     return 0;
                  }


                  Ok , je vois. C'est comme en python ? je viens de débuter le c c'est pour ça. Je fais un fichier où j'appelle les differentes fonctions et dans ce fichier plus bas , je mets les differentes fonctions. ? 



                  • Partager sur Facebook
                  • Partager sur Twitter
                    27 janvier 2020 à 1:13:25

                    Si tu mets les fonctions après le main, tu auras des warning du compilateur pour dire qu'il ne connait pas les fonctions.
                    Tu as deux choix:
                    + tu places les fonctions avant le main.
                    + tu mets le prototype de chaque fonction avant le main et les fonctions elles-mêmes après le main.
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Le Tout est souvent plus grand que la somme de ses parties.

                    Problème lors de compilation sur XCODE

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown