【问题标题】:Unable to build xgboost with OS X El Capitan Version 10.11.6无法使用 OS X El Capitan 版本 10.11.6 构建 xgboost
【发布时间】:2016-10-30 22:26:14
【问题描述】:

我正在尝试在 mac OS X El Capitan 版本 10.11.6 上构建 xgboost,但是,它给了我不受支持的选项 '--fopenmp'

clang: error: unsupported option '-fopenmp' make: *** [build/learner.o] Error 1

我已经使用 brew 更新了 Xcode 和 gcc,并且 gcc 版本为

gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/local/Cellar/gcc/6.2.0/libexec/gcc/x86_64-apple-darwin15.6.0/6.2.0/lto-wrapper Target: x86_64-apple-darwin15.6.0 Configured with: ../configure --build=x86_64-apple-darwin15.6.0 --prefix=/usr/local/Cellar/gcc/6.2.0 --libdir=/usr/local/Cellar/gcc/6.2.0/lib/gcc/6 --enable-languages=c,c++,objc,obj-c++,fortran --program-suffix=-6 --with-gmp=/usr/local/opt/gmp --with-mpfr=/usr/local/opt/mpfr --with-mpc=/usr/local/opt/libmpc --with-isl=/usr/local/opt/isl --with-system-zlib --enable-libstdcxx-time=yes --enable-stage1-checking --enable-checking=release --enable-lto --with-build-config=bootstrap-debug --disable-werror --with-pkgversion='Homebrew gcc 6.2.0 --without-multilib' --with-bugurl=https://github.com/Homebrew/homebrew/issues --enable-plugin --disable-nls --disable-multilib Thread model: posix gcc version 6.2.0 (Homebrew gcc 6.2.0 --without-multilib)

如果我在构建 xgboost 时遗漏了导致错误的任何内容,请告诉我。谢谢。

【问题讨论】:

    标签: macos gcc homebrew osx-elcapitan xgboost


    【解决方案1】:

    安装它的更好方法是使用存储库根目录中的build.sh 脚本。

    如果 OpenMP 支持不可用(例如在 Mac 中),这将禁用它

    或者

    make/minimum.mk 复制为config.mk 以手动禁用对openmp 的支持

    【讨论】:

    • 感谢您的回复。我已经尝试过这个选项,它使用 -fopenmp 标志显示进度并且失败。继续使用单线程 xgboost 并通过一些警告直到结束,没有错误。然后我进入 python shell 并尝试导入 xgboost 但它失败了。如果我做错了什么,请告诉我。
    • 啊,这里的说明是编译C二进制文件(您可以使用xgboost文件夹中的二进制文件xgboost运行它。要安装Python包,需要更多步骤:xgboost.readthedocs.io/en/latest/…
    • 我很愚蠢地错过了这一步,现在它对我来说工作正常。非常感谢:)
    猜你喜欢
    • 2016-12-31
    • 2018-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-09
    • 2015-11-05
    相关资源
    最近更新 更多