2009-09-03 6 views
8

Est-il possible d'utiliser les en-têtes précompilés gcc dans des projets utilisant automake/libtool?En-têtes précompilés avec Autotools

L'ajout de nouvelles règles de création pour créer des en-têtes précompilés n'est pas difficile. Le problème est que vous devez également ajouter des drapeaux de compilation introduits par libtool et AFAIK il ne peut pas gérer les fichiers d'entrée en-tête.

Comment pouvez-vous faire cela?

+0

Je pense qu'il y avait un support pour cela prévu pour Autotools J'ai vérifié (il ya un certain temps). Je me demande jusqu'où ça va aussi. –

Répondre

-2

Oui - bien que je sache qu'il n'y a toujours pas de prise en charge intégrée dans automake.

J'ai suivi these instructions et obtenu les en-têtes précompilés travailler dans l'un de mes projets, de coupe construire fois dans la moitié :-)

1

Le problème est que la solution ne pas travail sur tous les systèmes; libtool utilisera une ligne de commande du compilateur différente de $ (CXXCOMPILE), donc lorsque vous utilisez libtool sur certains systèmes, vous finissez par ne plus pouvoir utiliser l'en-tête précompilé.

Je n'ai pas encore trouvé un moyen de contourner ce problème; J'ai essayé d'utiliser $ (LTCXXCOMPILE), mais il se plaint qu'il ne sait pas comment traiter un fichier d'en-tête (en disant libtool: compile: cannot determine name of library object from 'project.hxx'). Bien sûr, ce qu'il devrait faire est d'utiliser project.hxx.gch en tant que fichier de sortie, mais je ne vois pas comment faire pour modifier le script libtool, ce qui irait à l'encontre du but de l'utilisation du système de build GNU ...

Questions connexes