Использование qt.conf
Вы можете использовать файл qt.conf для переопределения путей или для указания аргументов, которые должны быть переданы плагинам платформы.
Формат и расположение
Файл qt.conf представляет собой текстовый файл в формате INI, как описано в документации QSettings.
QLibraryInfo загрузит qt.conf из одного из следующих расположений:
-
:/qt/etc/qt.confс использованием системных ресурсов - в macOS, в каталоге Resource внутри пакета приложения, например
assistant.app/Contents/Resources/qt.conf - в каталоге, содержащем исполняемый файл приложения, т.е. QCoreApplication::applicationDirPath() + QDir::separator() + "qt.conf"
Переопределение путей
Файл qt.conf может использоваться для переопределения жёстко заданных путей, скомпилированных в библиотеку Qt. Эти пути доступны с помощью класса QLibraryInfo. Без qt.conf, функции в QLibraryInfo возвращают эти жёстко заданные пути; в противном случае они возвращают пути, указанные в qt.conf.
Без qt.conf, библиотеки Qt будут использовать жёстко заданные пути для поиска плагинов, переводов и т.д. Эти пути могут отсутствовать на целевой системе или быть недоступны. По этой причине вам может потребоваться qt.conf для того, чтобы библиотеки Qt искали в другом месте.
В файле должен быть раздел Paths, содержащий записи, соответствующие каждому значению перечисления QLibraryInfo::LibraryLocation. Подробнее о значении различных расположений см. в документации QLibraryInfo.
| Запись | Значение по умолчанию |
|---|---|
| Префикс | QCoreApplication::applicationDirPath() |
| Документация | doc |
| Заголовки | include |
| Библиотеки | lib |
| Исполняемые файлы библиотек | libexec |
| Бинарные файлы | bin |
| Плагины | plugins |
| Импорты | imports |
| Qml2Импорты | qml |
| ArchData | . |
| Данные | . |
| Переводы | translations |
| Примеры | examples |
| Тесты | tests |
| Настройки | . |
Используются абсолютные пути, как указано в файле qt.conf. Все пути относительны к Prefix. В Windows и X11 Prefix относительны к каталогу, содержащему исполняемый файл приложения (QCoreApplication::applicationDirPath()). В macOS Prefix относительны к Contents в пакете приложения. Например, application.app/Contents/plugins/ — это стандартное местоположение для загрузки плагинов Qt. Обратите внимание, что плагины должны быть размещены в определённых подкаталогах в каталоге plugins (подробнее см. Как создать плагины Qt).
Например, файл qt.conf может содержать следующее:
[Paths] Prefix = /some/path Translations = i18n
Примечание: символ обратного слэша обрабатывается как специальный символ в файлах INI (см. QSettings). Поэтому рекомендуется использовать прямой слэш для путей в Windows. В противном случае требуется символ экранирования:
Prefix = c:\\SomePath
Настройка аргументов для плагинов платформы
Файл qt.conf может содержать раздел Platforms, ключи которого представляют собой список аргументов, разделенных запятыми, которые должны быть переданы плагину платформы. Имя ключа — имя плагина платформы с заглавной первой буквой, за которым следует Arguments.
Например:
[Platforms] WindowsArguments = fontengine=freetype
будет использовать движок шрифтов FreeType для плагина платформы Windows.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qt-conf.html