Ввод областей действия в библиотеку шаблонов

В проекте C++/Qt мы используем .pro-файлы и qmake для сборки. Частью проекта является статическая библиотека. Файл .pro выглядит следующим образом:

TEMPLATE = lib
CONFIG = staticlib

#general build instructions

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

Однако эти области никогда не вводятся ни в системе Linux (когда должна выполняться первая область), ни в системе Windows (для второй области).

Это только кажется проблемой в staticlib-configuration/lib-template.

В документации упоминаются различные шаблоны, но я не см. что-нибудь упомянутое о том, почему области не будут работать или как это решить.


person Hekx    schedule 01.09.2016    source источник


Ответы (1)


Эти условия выполняются, если они установлены в переменной CONFIG. Переписывая CONFIG на staticlib, вы сбрасываете все предустановленные флаги, включая те, которые определяют платформу.

Это должно сработать, если вы сделаете CONFIG += staticlib

person Kasper    schedule 01.09.2016