小熊猫C++ 需要 Qt 5.15。
推荐开发环境:
设置 Visual Studio Code 开发环境的步骤:
0. 在 Windows 设置中,启用 “开发人员模式”。启用 Git 的 core.symlinks
选项(git config core.symlinks true
)。
.vscode/compile_commands.json
(命令面板中的 “C/C++: 编辑配置(UI)”);--compile-commands-dir=.vscode
;--qt=/usr
。* 提示:xmake 的引入是为了支持编译数据库的生成和功能测试矩阵,目前并不完备。
库 + 工具链 \ 目标 | x86 | x64 | ARM64 |
---|---|---|---|
MSYS2 + 基于 GNU 的 MinGW | ✔️ | ✔️ | ❌ |
MSYS2 + 基于 LLVM 的 MinGW | ✔️ | ✔️ | ✔️ |
Windows NT 5.x + MinGW Lite | ✔️ | ✔️ | ❌ |
另请参阅详细构建指南——Windows。
小熊猫C++ 应该能在 MSYS2 的 MinGW 工具链上构建,包括 3 个基于 GNU 的环境(MINGW32、MINGW64、UCRT64)中的 GCC 和 Clang,以及 3 个基于 LLVM 的环境(CLANG32、CLANG64、CLANGARM64)中的 Clang,关于环境的详情可参考 MSYS2 的文档。以下几个工具链测试较充分:
小熊猫C++ 官方版本使用 MINGW32 GCC 和 MINGW64 GCC 构建。
前置条件:
pacman -S \
$MINGW_PACKAGE_PREFIX-{toolchain,qt5-static,7zip,cmake} \
mingw-w64-i686-nsis \
git curl
要构建此项目,启动所选的 MSYS2 环境,然后运行
./packages/msys/build-mingw.sh
以构建带 MinGW GCC 工具链或不带编译器的小熊猫C++ 安装程序和绿色包;或者运行
./packages/msys/build-llvm.sh
以构建带 LLVM MinGW 工具链的小熊猫C++ 安装程序。
通用参数:
-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
:--mingw32
(x86 程序)或 --mingw64
(x64 程序)的别名。--ucrt <build>
:把 Windows SDK 附带的 UCRT 运行时添加到包中。例如 --ucrt 22621
表示 Windows 11 SDK 22H2。build-xp.sh
脚本和 build-mingw.sh
类似,但是工具链由 Qt 库提供。
前置条件:
pacman -S \
mingw-w64-x86_64-{7zip,cmake} \
mingw-w64-i686-nsis \
git curl
C:/Qt
。
C:
└─ Qt
└─ 5.15.13+redpanda1
├─ mingw141_32-msvcrt
│ ├─ bin
│ │ ├─ gcc.exe
│ │ ├─ mingw32-make.exe
│ │ └─ qmake.exe
│ ├─ include
│ ├─ lib
│ └─ ...
└─ mingw141_64-msvcrt
├─ bin
│ ├─ gcc.exe
│ ├─ mingw32-make.exe
│ └─ qmake.exe
├─ include
├─ lib
└─ ...
--qt
参数。要构建此项目,启动 MSYS2 环境,然后运行
./packages/msys/build-xp.sh -p 32-msvcrt
此脚本除了接受 build-mingw.sh
的参数外,还接受以下参数:
-p|--profile <profile>
:(必需)MinGW Lite 和 Qt 库的编译配置。可用的配置有 64-ucrt
、32-ucrt
、64-msvcrt
、32-msvcrt
、32-win2000
。
--qt <dir>
:指定 Qt 库目录。例如 --qt /d/myqt-32
。
目录结构应该如下:
D:
└─ myqt-32
├─ bin
├─ include
├─ lib
└─ ...
另请参阅详细构建指南——符合 freedesktop.org(XDG)规范的桌面系统。
sudo apt install --no-install-recommends build-essential debhelper devscripts equivs
./packages/alpine/buildapk.sh
./packages/archlinux/buildpkg.sh
./packages/debian/builddeb.sh
./packages/fedora/buildrpm.sh
./packages/opensuse/buildrpm.sh
~/packages/unsupported/$(uname -m)/redpanda-cpp-git-*.apk
/tmp/redpanda-cpp-git/redpanda-cpp-git-*.pkg.tar.zst
/tmp/redpanda-cpp_*.deb
~/rpmbuild/RPMS/$(uname -m)/redpanda-cpp-git-*.rpm
RedPandaIDE
注意:这些构建脚本签出此存储库的 HEAD,因此构建之前务必提交所有变更。
此外,也可以在容器环境中构建(推荐使用 rootless Podman;Docker 可能搞乱文件权限):
podman run --rm -v $PWD:/mnt -w /mnt <image> ./packages/<distro>/01-in-docker.sh
# 以 Arch Linux 为例
podman run --rm -v $PWD:/mnt -w /mnt docker.io/archlinux:latest ./packages/archlinux/01-in-docker.sh
软件包位于 dist/
目录下。
redpanda-cpp-bin
包大体上就是 “AppImage 重新打包”。真正的构建过程在容器中进行,因此构建主机不一定要 Ubuntu 20.04,任何 Linux 发行版只要有 Podman 和 dpkg 就行。
sudo apt install podman
./packages/debian-static/builddeb.sh
软件包位于 dist/
目录下。
podman run --rm -v $PWD:/mnt -w /mnt quay.io/redpanda-cpp/appimage-builder-x86_64:20240304.0 ./packages/appimage/01-in-docker.sh
Dockerfile 位于 redpanda-cpp/appimage-builder。可用架构:x86_64
、aarch64
、riscv64
。
前置条件:
xcode-select --install
构建:
SRC_DIR="~/redpanda-src"
BUILD_DIR="~/redpanda-build"
INSTALL_DIR="~/redpanda-pkg"
rm -rf "$BUILD_DIR" # 根据需要进行全新构建
mkdir -p "$BUILD_DIR" && cd "$BUILD_DIR"
~/Qt/5.15.2/clang_64/bin/qmake PREFIX="$INSTALL_DIR" "$SRC_DIR/Red_Panda_CPP.pro"
make -j$(sysctl -n hw.logicalcpu)
make install
~/Qt/5.15.2/clang_64/bin/macdeployqt "$INSTALL_DIR/bin/RedPandaIDE.app"
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。