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

Systèmes de compilation Discussion :

[CMake - Autotools] passage de l'un à l'autre


Sujet :

Systèmes de compilation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    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 [CMake - Autotools] passage de l'un à l'autre
    Bonjour,

    dans mon passage d'Autotools à CMake, je viens (encore) de tomber sur un os.

    Dans mon fichier configure.ac, j'ai ça
    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
     
    ILP_PATHS=$libdir/otawa/ilp
    LOADER_PATHS=$libdir/otawa/loader
    PROC_PATHS=$libdir/otawa/proc
    SIMULATOR_PATHS=$libdir/otawa/sim
     
    # Configurations
    AS_AC_EXPAND(ILP_PATHS, "$ILP_PATHS")
    AC_DEFINE_UNQUOTED(ILP_PATHS, "$ILP_PATHS", [Paths for ILP plugins])
    AS_AC_EXPAND(LOADER_PATHS,"$LOADER_PATHS")
    AC_DEFINE_UNQUOTED(LOADER_PATHS, "$LOADER_PATHS", [Paths for loader plugins])
    AS_AC_EXPAND(PROC_PATHS,"$PROC_PATHS")
    AC_DEFINE_UNQUOTED(PROC_PATHS, "$PROC_PATHS", [Paths for processor plugins])
    AS_AC_EXPAND(SIMULATOR_PATHS, "$SIMULATOR_PATHS")
    AC_DEFINE_UNQUOTED(SIMULATOR_PATHS, "$SIMULATOR_PATHS", [Paths for simulator plugins])
    Sous CMake j'ai essayé de le "convertir" en faisant ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(CMAKE_BUILD_TYPE MATCHES Release)
    	set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -D ILP_PATHS=lib/otawa/ilp")
    	set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -D LOADER_PATHS=lib/otawa/loader")
    endif (CMAKE_BUILD_TYPE MATCHES Release)
    Sauf que à la compilation j'obtiens

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    manager.cpp: In constructor 'otawa::Manager::Manager()':
    manager.cpp:148:21: error: 'lib' was not declared in this scope
    manager.cpp:148:21: error: expected primary-expression before '/' token
    manager.cpp:148:30: error: expected primary-expression before ')' token
    manager.cpp:150:24: error: expected primary-expression before '/' token
    manager.cpp:150:24: error: 'loader' was notdeclared in this scope
    manager.cpp:151:61: error: 'SIMULATOR_PATHS' was not declared in this scope
    manager.cpp: At global scope:
    manager.cpp:634:43: error: 'DATE' was not declared in this scope
    mingw32-make[2]: *** [src/prog/CMakeFiles/libotawa.dir/manager.cpp.obj] Error 1
    mingw32-make[1]: *** [src/prog/CMakeFiles/libotawa.dir/all] Error 2
    mingw32-make: *** [all] Error 2
    Comment faire ? J'ai essayé de mettre des chemins complets vers le dossier, j'ai un message d'erreur à cause du ":", il ne reconnait que la lettre du disque dur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    manager.cpp:148:21: error: 'D' was not declared in this scope
    manager.cpp:150:24: error: expected ')' before ':' token

  2. #2
    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
    Pour ajouter les flags à la compilation, j'utilise ça maintenant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    add_definitions(-DILP_PATHS=${PROJECT_BINARY_DIR}/lib/otawa/ilp -DLOADER_PATHS=${PROJECT_BINARY_DIR}/lib/otawa/loader)
    Mais ça ne résoud pas mon problème, toujours la même erreur.

    Edit : Trouvé ! Je devais rajouter \" pour en faire des String. Bizarrement ça ne fonctionnait pas avec set(), mais ça fonctionne avec add_definitions()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    add_definitions(-DILP_PATHS=\"${PROJECT_BINARY_DIR}/lib/otawa/ilp\" -DLOADER_PATHS=\"${PROJECT_BINARY_DIR}/lib/otawa/loader\")

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

Discussions similaires

  1. Passage d'une ihm à une autre ihm
    Par barouz dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 22/04/2006, 22h54
  2. Passage d'infos dans une autre frame
    Par dumser1 dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 23/11/2005, 09h28
  3. Event du passage d'une CPropertyPage à l'autre.
    Par Depteam1 dans le forum MFC
    Réponses: 2
    Dernier message: 27/07/2005, 15h55
  4. Passage d'un enregistrement à un autre avec TAB
    Par Cécile154 dans le forum Access
    Réponses: 2
    Dernier message: 16/02/2005, 14h47
  5. [Eclipse][Jbuilder] Passage de l'un à l'autre
    Par Haroldh dans le forum Eclipse
    Réponses: 1
    Dernier message: 07/01/2005, 10h15

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