cpp-mirai-client 是一个基于 mirai 与 mirai-api-http 的跨平台C++机器人框架。
本项目在一定程度上参考了 cyanray/mirai-cpp 项目,您也可以考虑使用该项目进行C++ QQ机器人的开发。
当前适配的 mirai-api-http 版本: v2.9.1
本项目使用CMake进行项目构建,要求CMake版本3.16以上。编译器需要支持C++17标准,目前已在最新版本的GCC、Clang与MSVC 编译器下测试通过。
使用cpp-mirai-client只需要将整个仓库克隆或下载到你的项目子目录中,并在项目的CMakeList.txt中添加
add_subdirectory(/path/to/cpp-mirai-client)
set(MIRAI_BUILD_UNIT_TESTS OFF CACHE BOOL "Build UnitTests" FORCE)
target_link_libraries(your_target_name PRIVATE cpp-mirai-client::cppmirai)
即可。
也可以通过 cppmirai-template 模板直接生成一个基础的程序框架
cpp-mirai-client 使用了以下第三方项目,可在 cmake/externals.cmake
文件内找到
- machinezone/IXWebSocket websocket and http client and server library, with TLS support and very few dependencies
- yhirose/cpp-httplib A C++ header-only HTTP/HTTPS server and client library
- nlohmann/json JSON for Modern C++
- marzer/tomlplusplus Header-only TOML config file parser and serializer for C++17
- google/googletest GoogleTest - Google Testing and Mocking Framework
其中 google/googletest 仅用于测试,实际使用时将忽略。
这些项目将自动通过 CMake
中的 FetchContent
下载并编译,
你也可以单独安装这些第三方库,cpp-mirai-client会自动使用 find_package
来找到对应的文件。所有依赖均为私有依赖,仅用于编译,使用cpp-mirai-client
时不需要链接这些第三方库。
本项目的文档生成使用了 Doxygen 与 jothepro/doxygen-awesome-css。
Read Next: 快速入门