1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/royqh1979-RedPanda-CPP

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
BUILD.md 11 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 03.03.2025 22:05 36acfe0

Общие замечания по разработке

Конфигурация Red Panda C++ требует Qt версии 5.15 или 6.8+ для сборки.

Рекомендованные среды разработки:

  1. Visual Studio Code.
    • Лучшая производительность.
  2. Qt Creator.
    • Минимальная конфигурация.
    • Встроенный дизайнер интерфейсов.
    • Интегрированный отладчик с Qt.

Для установки среды разработки в Visual Studio Code: 0. (Только для Windows) Включите режим разработчика в настройках Windows и активируйте core.symlinks в Git (git config core.symlinks true).

  1. Установите xmake и расширение XMake для VSCode.
  2. Установите расширение C/C++ для VSCode для поддержки языка и отладки.
  3. Опционально установите clangd и расширение clangd для VSCode для лучшего анализа.
  4. Настройте рабочую область:
    • Команды компиляции: .vscode/compile_commands.json ("C/C++: Edit Configurations (UI)" из палитры команд);
    • "Clangd: Arguments": --compile-commands-dir=.vscode;
    • "Xmake: Additional Config Arguments": --qt=/usr как пример.
  5. Выполните "XMake: UpdateIntellisense" (палитра команд) для генерации базы данных компиляций.

* Примечание: xmake был введен для генерации базы данных компиляций и тестирования матрицы возможностей. Он ещё полностью не функционален.

Windows

Библиотека + цепочка инструментов \ Целевой объект x86 x64 ARM64
MSYS2 + GNU-основанный MinGW ✔️
MSYS2 + LLVM-основанный MinGW ✔️ ✔️
Windows NT 5.x + MinGW Lite ✔️ ✔️

См. также более подробные инструкции по сборке для Windows.

MSYS2 Qt библиотека с MinGW цепочкой инструментов (рекомендуется)

Red Panda C++ должна работать со всеми 64-битными MinGW цепочками инструментов от MSYS2, включая GCC и Clang в GNU-основанных окружениях (MINGW64 и UCRT64), а также Clang в LLVM-основанных окружениях (CLANG64 и CLANGARM64; см. также документацию MSYS2). Однако следующие цепочки инструментов часто проверяются:

  • MINGW64 GCC,
  • UCRT64 GCC (рекомендуется для x64),
  • CLANGARM64 Clang (единственный и рекомендуемый инструмент для ARM64).

Официальные распределения Red Panda C++ собираются с MINGW32 GCC (архивировано) и MINGW64 GCC.

Необходимое оборудование:

  1. Windows 10 x64 или более поздняя версия, или Windows 11 ARM64.
  2. Установите MSYS2.
  3. В выбранной среде установите цепочку инструментов, Qt 5 библиотеку и необходимые утилиты:
    pacman -S \
      $MINGW_PACKAGE_PREFIX-{cc,make,qt5-static,7zip,cmake} \
      mingw-w64-i686-nsis \
      git curl

Чтобы собрать, запустите выбранную среду MSYS2, выполните:

./packages/msys/build-mingw.sh

чтобы собрать установщик Red Panda C++ и портативный пакет с использованием MinGW GCC цепочки инструментов или без компилятора; и

./packages/msys/build-llvm.sh

чтобы собрать установщик Red Panda C++ с LLVM MinGW цепочкой инструментов.

Общие аргументы:

  • -h, --help: показать сообщение помощи.
  • -c, --clean: очистить директорию сборки.
  • -nd, --no-deps: не проверять зависимости.
  • -t <dir>, --target-dir <dir>: установить целевую директорию для пакетов. По умолчанию: dist/.

Дополнительные аргументы для build-mingw.sh:

  • --mingw32: добавить assets/mingw32.7z в пакет.
  • --mingw64: добавить assets/mingw64.7z в пакет.
  • --mingw: псевдоним для --mingw64 (приложение x64).
  • --ucrt <build>: добавить UCRT runtime из Windows SDK в пакет. Например, --ucrt 22621 для Windows 11 SDK 22H2.

Windows NT 5.x Qt библиотека с MinGW Lite цепочкой инструментов

Скрипты build-xp.sh аналогичны build-mingw.sh, но цепочка инструментов предоставляется Qt библиотекой.

Необходимое оборудование для нативной сборки:

  1. Windows 10 x64 или более поздняя версия.
  2. Установите MSYS2.

Для нативной сборки запустите среду MSYS2, выполните:

./packages/msys/build-xp.sh -p 32-msvcrt

Для кросс-сборки выполните:

podman run -it --rm -v $PWD:/mnt -w /mnt docker.io/amd64/ubuntu:24.04

# внутри контейнера
export MIRROR=mirrors.kernel.org  # опционально установите сайт зеркало
./packages/xmingw/build-xp.sh -p 32-msvcrt

Эти скрипты принимают те же аргументы, что и build-mingw.sh, плюс:

  • -p|--profile <профиль>: (РЕКОМЕНДУЕМО) профиль MinGW Lite и Qt библиотеки. Доступные профили: 64-ucrt, 64-msvcrt, 32-ucrt, 32-msvcrt.

Linux

См. также более подробные инструкции по сборке для систем с рабочими столами, соответствующими стандарту freedesktop.org (XDG).

Alpine Linux, Arch Linux, Debian и его производные, Fedora, openSUSE

  1. Настройте среду сборки (документация для Alpine, Arch, Debians, RPM).
    • Для Debians:
      sudo apt install --no-install-recommends build-essential debhelper devscripts equivs
  2. Вызовите скрипт сборки:
    • Alpine Linux: ./packages/alpine/buildapk.sh
    • Arch Linux: ./packages/archlinux/buildpkg.sh
    • Debians: ./packages/debian/builddeb.sh
    • Fedora: ./packages/fedora/buildrpm.sh
    • openSUSE: ./packages/opensuse/buildrpm.sh
  3. Установите пакет:
    • Alpine Linux: ~/packages/unsupported/$(uname -m)/redpanda-cpp-git-*.apk
    • Arch Linux: /tmp/redpanda-cpp-git/redpanda-cpp-git-*.pkg.tar.zst
    • Debians: /tmp/redpanda-cpp_*.deb
    • Fedora, openSUSE: ~/rpmbuild/RPMS/$(uname -m)/redpanda-cpp-git-*.rpm
  4. Запустите Red Panda C++:
    RedPandaIDE

Примечание: некоторые из этих скриптов вытягивают голову репозитория, поэтому любые изменения должны быть зафиксированы перед сборкой.

Альтернативно, соберите в контейнере (корневой Podman предпочтителен; Docker может нарушить права доступа к файлам):

podman run --rm -v $PWD:/mnt -w /mnt <образ> ./packages/<дистрибутив>/01-in-docker.sh

# Архивный пример
podman run --rm -v $PWD:/mnt -w /mnt docker.io/archlinux:latest ./packages/archlinux/01-in-docker.sh

Пакет будет размещен в dist/.

Статически связанный двоичный файл для Ubuntu 20.04 x86_64 (NOI Linux 2.0)

Пакет redpanda-cpp-bin представляет собой пример "AppImage repack". Двоичный файл действительно собирается в контейнере. Таким образом, хост-система сборки не обязательно является Ubuntu 20.04; любой Linux-дистрибутив с Podman и dpkg должен работать.1. Установите Podman, и dpkg, если хост-система сборки не является Debian или её производными:

sudo apt install podman

ВНИМАНИЕ: НЕ УСТАНАВЛИВАЙТЕ ПАКЕТЫ с dpkg на неключевых системах, или ваша система будет повреждена. 2. Вызовите скрипт сборки:

./packages/debian-static/builddeb.sh

Пакет будет размещен в dist/.

Linux AppImage

podman run --rm -v $PWD:/mnt -w /mnt ghcr.io/redpanda-cpp/appimage-builder-x86_64:20241120.0 ./packages/appimage/01-in-docker.sh

Dockerfile доступен в redpanda-cpp/appimage-builder. Доступные архитектуры: x86_64, aarch64, riscv64, loong64, i686.

macOS

Qt.io Qt библиотека

Необходимое оборудование:

  1. Современная версия macOS, удовлетворяющая требованиям Qt 5 или Qt 6.
  2. Установите Xcode Command Line Tools:
    xcode-select --install
  3. Установите Qt с онлайн-инсталлером с Qt.io.
    • Выберите библиотеку (в группе Qt, подгруппе Qt 5.15.2 или Qt 6.8.0, отметьте macOS).

Чтобы собрать, выполните одно из следующего:

./packages/macos/build.sh -a x86_64 --qt-version 5.15.2
./packages/macos/build.sh -a x86_64 --qt-version 6.8.0
./packages/macos/build.sh -a arm64 --qt-version 6.8.0
./packages/macos/build.sh -a universal --qt-version 6.8.0

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/royqh1979-RedPanda-CPP.git
git@api.gitlife.ru:oschina-mirror/royqh1979-RedPanda-CPP.git
oschina-mirror
royqh1979-RedPanda-CPP
royqh1979-RedPanda-CPP
master