Bonjour à tous,
Alors voila ce que je souhaite faire:
un projet qui est utilise une librairie statique qui elle même pointe sur une autre librairie statique.
On obtient donc le projet MonProjet qui possède une dépendance sur le projet MaLib1 qui possède une dépendance sur MaLib2
Ce qui donne l'ordre de compilation suivant (vu que les dépendances sont correctes):
MaLib2
MaLib1
MonProjet
Le problème, c'est que la propriété "Autres Répertoires Include" qui se trouve dans la feuille de propriété de mon projet MaLib1 (Propriété de Configuration > C/C++) ne semble fonctionner correctement. Toute tentave d'include d'un fichier de MaLib2 foire (alors que la même technique entre MonProjet et MaLib1 fonctionne).
Par exemple j'ai un fichier dans MaLib2 qui se nomme foo.cpp. He bien #include "foo.cpp" ne fonctionne pas dans MaLib1.
Alors pour bien vérifier que ce n'est pas un mauvais chemin d'accès qui a été donné, j'ai fais les tests suivants: regarder la ligne de commande (pour générer MaLib1) qui produit bien le résultat escompté a coté de /I (copier-coller le chemin dans l'explorateur me donne bien le dossier MaLib2 avec foo.cpp dedans).
J'ai aussi refais 2 fois la solution complète avec a chaque fois des noms différents et impossible de le rendre fonctionnel, elles bloquent de la même façon.
Seul #include "c:\\<mon chemin absolu>\\foo.cpp" fonctionne... mais bravo pour la portabilité (c'est vachement utile après de s'emmerder à synchro une équipe sur SVN comme c'est le cas escompté pour ce projet).
Voici un zip de la solution afin que vous puissiez en attester par vous même (et comprendre pourquoi ca ne fonctionne pas): http://dl.free.fr/teHZpimAN (mirroir: http://lucyberad.googlepages.com/MaSolution.zip).
Merci d'avance pour toute l'aide que vous pourriez apporter (et/ou le temps dépensé à comprendre).
Lucyberad.
Partager