Xgboost gpu 安装致命错误 LNK1181

Zon*_* Wu 1 gpu lnk visual-studio xgboost

我正在尝试按照以下说明安装 xgboost gpu 支持版本。xgboost-gpu-support

我使用 windows 10,visual studio 2017。不支持 GPU 的版本工作正常。但是对于支持 gpu 的版本?当我从 Visual Studio 释放模式时,它输出错误链接:致命错误 LNK1181:无法打开输入文件“Release\gpuxgboost.lib”。

在前面的步骤中,一切都进行得很好。我怎样才能解决这个问题?提前致谢。

(我的项目是D:\Software\xgboost\xgboost\build\ALL_BUILD.vcxproj,没有空间。所以这个解决方案不起作用。lnk1181-error-message-when-you-build-a-manag

小智 5

正如我看到很多人努力正确构建具有 GPU 支持的 xgboost 库,鉴于在我看来,关于这件事的文档至少是不完整的,我决定分享我在这方面的经验。首先,这个过程在 Windows 10 x64 平台上是成功的。我使用的工具是:

  1. Microsoft Visual Studio 2015 Express,https://www.visualstudio.com/vs/visual-studio-express/
  2. Cmake,https: //cmake.org/
  3. Git(Windows 版 Git),https://git-for-windows.github.io/

为了构建支持 GPU 的 xgboost 库,您应该首先检查您的显卡与 xgboost 要求的兼容性。xgboost 支持 8.0 及更高版本的 CUDA 版本。具有 3.0 及以上计算能力的显卡满足此要求。你可以在这里检查:

https://developer.nvidia.com/cuda-gpus

然后,您必须为您的系统下载并安装适当的 CUDA SDK。你可以在这里找到它:

https://developer.nvidia.com/cuda-downloads

您可以使用 SDK 附带的示例项目来检查它们是否可以在您的系统中正确构建和运行。

这一步对于构建具有 GPU 支持的库至关重要(至少在我的情况下是这样)。进入Microsoft Visual Studio 2015的安装目录VC/bin子目录。在此:

  1. 将子目录 x86_amd64 的所有内容复制到子目录 amd64。

  2. 在 amd64 子目录中,将文件 vcvarsx86_amd64.bat 重命名为 vcvars64.bat。

然后,打开 Git Bash,并键入以下命令:

  1. git clone --recursive https://github.com/dmlc/xgboost
  2. cd xgboost
  3. git子模块初始化
  4. git子模块更新
  5. mkdir 构建
  6. 光盘构建
  7. cmake .. -G"Visual Studio 14 2015 Win64" -DUSE_CUDA=ON

cmake 完成后,使用 Visual Studio 2015 打开 ALL_BUILD.vcxproj。选择解决方案配置“发布”和解决方案平台“x64”。构建-> 构建解决方案。构建过程完成后,xgboost.dll 库文件将位于 xgboost/lib 目录中。

最后,您可以继续安装 Python 包或 R 包。