Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications
Applications Questions sur l'utilisation d'applications, du shell, et des interfaces graphiques (KDE, Gnome, XFCE... )
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 18/02/2010, 16h46   #1
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 72
Détails du profil
Informations personnelles :
Localisation : France, Calvados (Basse Normandie)

Informations forums :
Inscription : novembre 2004
Messages : 72
Points : 32
Points : 32
Envoyer un message via MSN à systemofaxav
Par défaut [cmake] Forcer un ordre pour la compilation de plusieurs fichiers

Bonjour,

ma question se rapproche du topic précédent avec une petite variante :

J'ai un fichier cmake dans lequel je commande la compilation de deux choses:

Tout d'abord la compilation d'un ensemble de librairies pour mon projet.
Puis la compilation d'un ensemble d'exécutables qui ont besoin de ces librairies.

Dans mon CMakeList.txt tout est bien agencé, les add_library sont bien tous avant les add_executable, mais dans le makefile généré tout est mélangé (executables et librairies) et ... classés par ordre alphabétiques

Du coup l'executable aaa est compilé avant la librairie bbb, alors qu'il a besoin de cette dernière.

Comment puis-je forcer cmake à garder l'ordre décrit dans le CMakeList.txt ?
Ou au minimum déclarer des dépendances comme dans un bon vieux makefile ?
systemofaxav est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2010, 17h17   #2
Nouveau Membre du Club
 
Inscription : novembre 2004
Messages : 72
Détails du profil
Informations personnelles :
Localisation : France, Calvados (Basse Normandie)

Informations forums :
Inscription : novembre 2004
Messages : 72
Points : 32
Points : 32
Envoyer un message via MSN à systemofaxav
J'ai trouvé une demi-solution:

ADD_DEPENDENCISES(${exe} ${listlib})

où exe est un exécutable et listlib la liste des librairies

Mais je reste sur ma faim, je dois tester les dépendances pour chaque executables, alors qu'il suffirait d'imposer la compilation des librairies en premier.

Pourquoi cmake force-t'il la compilation par ordre alphabétique ? Je ne comprends pas l'intéret.

Si quelqu'un peut éclairer ma lanterne, je suis preneur
systemofaxav est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 02h12.


 
 
 
 
Partenaires

Hébergement Web