Интеграция
Как встроить Plugify в ваши собственные проекты.
Plugify разработан для легкой интеграции в ваши проекты, будь то платформа для моддинга игр, автономное приложение или система на основе плагинов. Это руководство проведет вас через процесс интеграции Plugify в ваш проект с использованием CMake, охватывая как внешний, так и встроенный методы интеграции.
Методы интеграции
1. Внешняя интеграция
Чтобы использовать Plugify как внешнюю библиотеку, вы можете найти ее напрямую с помощью find_package()
в вашем проекте CMake. Этот метод идеален, если вы хотите оставить Plugify в качестве отдельной зависимости.
Пример:
2. Встроенная интеграция
Если вы предпочитаете встраивать Plugify непосредственно в ваш проект, вы можете включить все дерево исходного кода как подкаталог. Этот метод полезен, если вы хотите настроить или расширить функциональность Plugify.
Пример:
3. Встроенная интеграция с FetchContent
Для проектов, использующих CMake 3.11 или новее, вы можете использовать модуль FetchContent
для автоматической загрузки и интеграции Plugify во время конфигурации.
Пример:
Примечание: Подход с URL рекомендуется для стабильных релизов. Для получения дополнительной информации см. документацию FetchContent.
4. Поддержка как внешней, так и встроенной интеграции
Если вы хотите, чтобы ваш проект поддерживал как внешнюю, так и встроенную интеграцию, вы можете использовать следующий шаблон:
Верхний уровень
Thirdparty
В этой конфигурации thirdparty/plugify
должен содержать полную копию дерева исходного кода Plugify.
Пример: Инициализация Plugify в вашем приложении
После интеграции вы можете инициализировать Plugify в вашем приложении следующим образом:
Рекомендации
- Используйте одинаковые среды сборки:
- Убедитесь, что Plugify и ваш проект собираются с одним и тем же компилятором и версией C++, чтобы избежать проблем с совместимостью.
- Отключайте ненужные функции:
- Если вам не нужны тесты или документация, отключите их с помощью опций CMake, таких как
PLUGIFY_BUILD_TESTS
иPLUGIFY_BUILD_DOCS
.
- Если вам не нужны тесты или документация, отключите их с помощью опций CMake, таких как
- Корректно обрабатывайте ошибки:
- Всегда проверяйте возвращаемые значения функций инициализации и управления Plugify для эффективной обработки ошибок.
- Используйте FetchContent для стабильных релизов:
- При использовании
FetchContent
предпочитайте загружать стабильные релизы с GitHub для обеспечения совместимости и надежности.
- При использовании
Устранение неполадок
- Отсутствующие пакеты: Если менеджер пакетов сообщает об отсутствующих пакетах, убедитесь, что необходимые пакеты доступны в настроенных каталогах или репозиториях.
- Конфликтующие пакеты: Разрешите конфликты, удалив или обновив конфликтующие пакеты.
- Ошибки сборки: Убедитесь, что ваша конфигурация CMake соответствует требованиям Plugify (например, C++20, совместимые компиляторы).