URL: https://linuxfr.org/forums/programmation-c/posts/interdire-%C3%A0-gcc-de-charger-les-includes-par-d%C3%A9faut Title: Interdire à GCC de charger les includes par défaut Authors: Thomas Bigot Date: 2010年01月05日T18:37:38+01:00 Tags: Score: 1 Bonjour, Ma question me semble simple, mais je n'ai pas trouvé de réponse dans mon moteur de recherche préféré, alors je tente ma chance ici. Je souhaite compiler la version CVS de la bibliothèque TotoLib dépendant de TotoBase. Je veux installer ça dans /home/moi/toto/lib et /home/moi/toto/includes. Le hic, c'est que je ne suis pas administrateur de la machine, et qu'elle contient la version 1.0 de TotoLib et TotoBase, installés dans /usr/lib et /usr/includes. Je peux compiler TotoBase, l'installer dans mon homedir, mais quand j'installe TotoLib, lors de l'inclusion de headers de TotoBase (genre #include ), il charge celui de la version 1.0 qui est sur le système (/usr/includes), alors que je voudrais qu'il utilise celle de mon homedir. À noter que j'ai bien préalablement fait un petit export CPPFLAGS=-I/home/moi/toto/includes Rien à faire, g++ semble se servir en priorité dans /usr/includes qui contient une ancienne version, et du coup, ne peux pas compiler (error: ISO C++ forbids declaration of 'MaClasseNouvellementDefinie’ with no type). Est-il possible de l'obliger à n'utiliser que les headers situés dans un répertoire spécifié ? De même pour les shared objects, mon binaire ainsi compilé va-t-il pouvoir être lié aux so locaux (de mon homedir) ? Merci de vos lumières !

AltStyle によって変換されたページ (->オリジナル) /