2016-09-01 1 views
1

Dans un projet C++/Qt, nous utilisons des fichiers .pro et qmake pour générer. Une partie du projet est une librairie statique. Le fichier .pro va comme ceci:Saisie d'étendues dans le modèle lib

TEMPLATE = lib 
CONFIG = staticlib 

#general build instructions 

linux{ 
    #some os-specific build instructions 
} 
win32|win64{ 
    #some os-specific build instructions 
} 

Cependant, ces champs d'application ne sont jamais entrés, pas sur un système Linux (lorsque le premier champ doit exécuter), ni sur un système de fenêtres (pour la deuxième portée).

Cela semble seulement être un problème dans le staticlib-configuration/lib-template. Le Qt-documentation mentionne les différents modèles, mais je ne vois rien qui soit mentionné pour expliquer pourquoi les oscilloscopes ne fonctionneraient pas ou comment résoudre ce problème.

Répondre

2

Ces conditions sont vraies si elles sont définies dans la variable CONFIG. En écrasant CONFIG avec staticlib, vous réinitialisez tous les indicateurs prédéfinis, y compris ceux qui spécifient la plate-forme.

Cela devrait fonctionner si vous le faites CONFIG += staticlib