IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

c++ sur linux


Sujet :

C++

  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut c++ sur linux
    Bonjour
    Si le vous plait est ce qu'il y a quelqu'un qui peut m'aider a comprendre cette instruction

    g++ -O3 -mtune=core2 -mmmx -msse -msse2 -mssse3 -Wno-strict-aliasing -o exe exemple.cc MListePI.cc MDetecteur.cc MCharImage.cc MHomographie.cc MUtils.cc MShortImage.cc MFloatImage.cc MSignedShortImage.cc MParamsIntrinseques.cc MCorrelation.cc jtmatrix.cc Matrix33.cc

  2. #2
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    As tu regardé le man de g++ ?
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  3. #3
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    oui je viens de jeter l'œil , sauf qu'il y a plus que 2000 lignes pour man g++ et des milliers de flag sans explication

  4. #4
    Membre expérimenté Avatar de ManusDei
    Homme Profil pro
    vilain troll de l'UE
    Inscrit en
    Février 2010
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : vilain troll de l'UE

    Informations forums :
    Inscription : Février 2010
    Messages : 1 624
    Par défaut
    Fait une recherche google sur chaque terme, genre g++ -O3 (lui je connais c'est l'optimisation du code).

  5. #5
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    Citation Envoyé par shadowless Voir le message
    oui je viens de jeter l'œil , sauf qu'il y a plus que 2000 lignes pour man g++ et des milliers de flag sans explication
    Sans explication ??
    Voici le premier lien sorti par google avec comme recherche "man g++".

    Tu trouves que ca manque d'explication ??
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  6. #6
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    oui apparemment le lien que vous m'avez envoyé donne presque la mm résultats que que j'en ai sur la console avec man g++ , alors que c est toujours sans explication

  7. #7
    Membre expérimenté Avatar de ManusDei
    Homme Profil pro
    vilain troll de l'UE
    Inscrit en
    Février 2010
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : vilain troll de l'UE

    Informations forums :
    Inscription : Février 2010
    Messages : 1 624
    Par défaut
    Faut descendre un peu, ne pas rester sur la première page... toutes les options sont décrites en détail plus bas.

  8. #8
    screetch
    Invité(e)
    Par défaut
    hmmm..

    g++
    le compilateur

    -O3
    le niveau d'optimisation 3 (maximum) pour générer du code rapide

    -mtune=core2
    génère du code qui sera le plus rapide possible sur un Core 2 d'intel (mais qui marchera partout, mais un peu plus lent)

    -mmmx -msse -msse2 -mssse3
    utilise les jeux d'instructions MMX, SSE, SSE2, SSE3, SSSE3

    -Wno-strict-aliasing
    option dangereuse qui dit au compilateur d'effectuer certaines optimisations qui pourraient être dangereuses, liés a la mémoire

    -o exe
    génère un executable qui s'appelle exe

    exemple.cc MListePI.cc MDetecteur.cc MCharImage.cc MHomographie.cc MUtils.cc MShortImage.cc MFloatImage.cc MSignedShortImage.cc MParamsIntrinseques.cc MCorrelation.cc jtmatrix.cc Matrix33.cc

    toute les sources a compiler

  9. #9
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    / is the key
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  10. #10
    Membre Expert
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Par défaut
    Citation Envoyé par screetch Voir le message
    -Wno-strict-aliasing
    option dangereuse qui dit au compilateur d'effectuer certaines optimisations qui pourraient être dangereuses, liés a la mémoire
    Et non! Sa désactive juste les warnings relatif aux strict aliasings rules.
    Ce dont tu parles c'est -fno-strict-aliasing

  11. #11
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    merci à vous tous j ai compilé avec cette commande et c est plus agréable maintenant de savoir de koi il s agit

    mais si le vous plait est ce que vous avez pas un tutoriel pour moi sur la programation en c++ avec le compilateur g++ sur linux
    et est ce qu'il possible de porter cette commande sur un makefile

  12. #12
    screetch
    Invité(e)
    Par défaut
    ah merci goten j'ai été trop vite.

  13. #13
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 118
    Billets dans le blog
    148
    Par défaut
    Citation Envoyé par shadowless Voir le message
    merci à vous tous j ai compilé avec cette commande et c est plus agréable maintenant de savoir de koi il s agit

    mais si le vous plait est ce que vous avez pas un tutoriel pour moi sur la programation en c++ avec le compilateur g++ sur linux
    et est ce qu'il possible de porter cette commande sur un makefile
    Les tutos -> http://cpp.developpez.com/cours/ (lien en haut de page )
    Que ce soit sous GNU/Linux ne change pas vraiment grand chose. Et pour completer le tout -> http://gl.developpez.com/tutoriel/outil/makefile/
    Oui il est possible mettre la commande (telle quelle ou presque) dans le makefile.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  14. #14
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    oui en fait j ai essayé de faire un makefile c plus commode mais ça pas fonctionner voila le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    CC=gcc
    cpp=g++
    CFLAGS=-W -Wall -ansi 
    CFXXLAGS=-W -Wall -ansi -c -g
     
    # LDFLAGS=
    EXEC=toto
    #SRC=point.cpp main.cpp
    SRC= $(wildcard *.cpp) #gérer la liste des fichiers sources de manière automatique et pour realiser cette tache on utilise un joker *.cpp avec la commande wildcard
    OBJ= $(SRC:.cpp=.o)  #Génération de la liste des fichiers objets
     
     
    all: $(EXEC)
     
    toto:main.o McharImage.o MCorrelation.o MDetecteur.o MFloatImage.o MHomographie.o MListePI.o MParamsIntrinseques.o MShortImage.o MSignedShortImage.o MUtils.o Matrix33.o jtmatrix.o 
     
            $(cpp) -o $@ $^ 
     
     
     
    McharImage.o:McharImage.cc MCharImage.h MDetecteur.h MListePI.h MListeCouples.h MUtils.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MCorrelation.o:MCorrelation.cc MCorrelation.h MCharImage.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MDetecteur.o:MDetecteur.cc MDetecteur.h MListePI.h MCharImage.h MShortImage.h MRGBImage.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MFloatImage.o:MFloatImage.cc MFloatImage.h MListePI.h MUtils.h MCharImage.h MSignedShortImage.h jtmatrix.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MHomographie.o:MHomographie.cc MHomographie.h MUtils.h MathUtils.h 
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MListePI.o:MListePIcc MListePI.h MCharImage.h MFloatImage.h MUtils.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MParamsIntrinseques.o:MParamsIntrinseques.cc MParamsIntrinseques.h MathUtils.h DiversUtils.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MShortImage.o:MShortImage.cc MShortImage.h MUtils.h Mmx.h Sse.h
         $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MSignedShortImage.o:MSignedShortImage.cc MSignedShortImage.h Mmx.h Sse.h MUtils.h MCharImage.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    MUtils.o:MUtils.cc MUtils.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    Matrix33.o:Matrix33.cc Matrix33.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    jtmatrix.o:jtmatrix.cc jtmatrix.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    main.o:main.c MCharImage.h MDetecteur.h MListePI.h MUtils.h
        $(Cpp) -o $@ -c $< $(CFXXLAGS)
     
    clean:
        rm *.o
     
    #mrproper: clean
    #    rm $(EXEC)

  15. #15
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    j'ai fais ossi cela mais ça pa tourné
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    #CC=gcc
    cpp=g++
    CFLAGS=-W -Wall -ansi 
    CFXXLAGS=-W -Wall -ansi 
    # LDFLAGS=
    EXEC=exe
     
    SRC= $(wildcard *.cc) #gérer la liste des fichiers sources de manière automatique et pour realiser cette tache on utilise un joker *.cpp avec la commande wildcard
    OBJ= $(SRC:.cc=.o)  #Génération de la liste des fichiers objets
     
     
    all: $(EXEC)
     
    exe:exemple.o MListePI.o MDetecteur.o MCharImage.o MHomographie.o MUtils.o MShortImage.o MFloatImage.o MSignedShortImage.o MParamsIntrinseques.o MCorrelation.o jtmatrix.o Matrix33.o
     
        $(cpp) -o $@ $^ 
     
    %.o: %.cpp  # règles d'inférencepour generer nos different fichier
        $(cpp) -o $@ -c $< $(CFXXLAGS)
     
    clean:
        rm *.o
     
    #mrproper: clean
    #    rm $(EXEC)

  16. #16
    screetch
    Invité(e)
    Par défaut
    c'est quoi l'erreur?

  17. #17
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 118
    Billets dans le blog
    148
    Par défaut
    Hum ... il serait bon pour nous de nous indiquer les erreurs retournees ...
    Sinon, les makefile il faut etre prudent car les tabulation sont importante.

    Cette ligne me semble un peu etrange:
    all: $(EXEC)

    toto:main.o McharImage.o MCorrelation.o MDetecteur.o MFloatImage.o MHomographie.o MListePI.o MParamsIntrinseques.o MShortImage.o MSignedShortImage.o MUtils.o Matrix33.o jtmatrix.o
    Prenez le makefile le plus simple de ce tuto http://gl.developpez.com/tutoriel/outil/makefile/ et modifier le pour votre projet. Comprennez le et tout sera bon au lieu de partir directement sur une solution un peu trop complique
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  18. #18
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    pour les 2 versions ça me donne cette erreur

    Makefilex:18: *** séparateur manquant . Arrêt

  19. #19
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 472
    Par défaut
    1. Merci d'utiliser les balises [code] et [/code] lorsque tu joins un extrait de ton code ici ;
    2. « 18 », c'est le numéro de ta ligne. Le message « Makefilex:18: *** séparateur manquant . Arrêt » signifie qu'il manque un séparateur dans ta ligne dix-huit et, donc, qu'elle est mal écrite. Après, comme on ne sait pas encore quelle est la ligne 18…

  20. #20
    Membre actif
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2011
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 46
    Par défaut
    Merci , c est résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. JBuilder existe sur Linux ?
    Par hm_hopeful47 dans le forum JBuilder
    Réponses: 4
    Dernier message: 21/02/2005, 19h07
  2. performances 9i sur linux
    Par learn dans le forum Oracle
    Réponses: 4
    Dernier message: 17/12/2004, 20h42
  3. quel sgbd sur linux??
    Par fabfab1 dans le forum Décisions SGBD
    Réponses: 6
    Dernier message: 27/11/2004, 18h38
  4. lancer OEM via le browser (10g sur linux)
    Par learn dans le forum Entreprise Manager
    Réponses: 6
    Dernier message: 20/09/2004, 17h04
  5. [analyse de syntaxe] pour C et C++ sur Linux
    Par Madmac dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 10/07/2004, 06h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo