1 前期软件及脚本准备
-
下载并安装 Git:从 Git 官方网站(https://git-scm.com/downloads)下载适用于 Windows 的 Git 安装程序,并按照安装程序的指示进行安装。
-
下载并安装 CMake:从 CMake 官方网站(https://cmake.org/download/)下载适用于 Windows 的 CMake 安装程序,并按照安装程序的指示进行安装。
-
下载并安装 Microsoft Visual Studio Community 2022:从 Microsoft Visual Studio 官方网站(https://visualstudio.microsoft.com/downloads/)下载适用于 Windows 的 Visual Studio Community 2022,并按照安装程序的指示进行安装。
2 编译和安装 XGBoost 的 C++ 版本
(1) 打开命令提示符(如PowerShell)或Git Bash。
(2) 克隆XGBoost的GitHub存储库:在命令提示符中执行以下命令以克隆XGBoost的GitHub存储库到本地:
git clone --recursive https://github.com/dmlc/xgboost.git
(3) 进入XGBoost源代码目录:执行以下命令进入源代码目录:
cd xgboost
(4) 创建用于构建的目录:在XGBoost源代码目录中,执行以下命令创建一个与源代码分离的目录(称为构建目录),用于存储生成的构建文件和生成的库文件:
mkdir build
cd build
(5) 使用 CMake 生成 Visual Studio 的解决方案和项目文件。你可以根据需要指定其他选项(其中,-A
参数指定生成的C++项目的目标体系结构(如x64);-DCMAKE_BUILD_TYPE
参数用于指定构建类型,例如“Release”或“Debug”。)。以下示例使用 Visual Studio 2022(对应的生成器名称为 "Visual Studio 17 2022"):
cmake .. -G "Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release
如果您希望生成调试版本,可以将-DCMAKE_BUILD_TYPE
参数设置为“Debug”。
(6) 在构建目录中,打开生成的 .sln
文件。
(7) 在 Visual Studio 中,选择适当的生成配置(例如 "Release" 或 "Debug"),然后点击 "生成" 菜单中的 "生成解决方案"。
(8) 构建过程完成后,将在构建目录中找到生成的 XGBoost 的库文件和可执行文件。
您可以将生成的库文件(如 xgboost.dll
和 xgboost.lib
)添加到您的其他项目中,并使用 XGBoost 的 C++ 版本进行开发和推理。
3 项目中如何引入
(1) 打开你的其他项目的解决方案。
(2) 在解决方案资源管理器中,右键单击您的项目,然后选择 "属性"。
(3) 在属性窗口中,选择 "VC++ 目录",然后在右侧面板中选择 "包含目录"。
(4) 单击编辑,然后添加 XGBoost 的头文件目录。这通常是 XGBoost 源代码中的 include
文件夹。
(5) 在属性窗口中,选择 "VC++ 目录",然后在右侧面板中选择 "库目录"。
(6) 单击编辑,然后添加 XGBoost 的库文件目录。这通常是 XGBoost 源代码中的 lib
文件夹。
(7) 在属性窗口中,选择 "链接器" > "输入"。
(8) 在 "附加依赖项" 中,添加 xgboost.lib
。
(9) 保存并关闭属性窗口。
项目文件中需要包含 XGBoost 头文件:
#include <xgboost/c_api.h>
这样,就可以在您的其他项目中使用 XGBoost 的 C++ 版本进行推理了。根据你的具体需求,可能需要进一步的调整和配置。请参阅 XGBoost C++ API 的文档以获取更多详细信息和用法示例。