Estou tentando instalar o wrapper python do xgboost no OSX 10.11.6 com python3. Em primeiro lugar, eu fiz:
user@MacBook-Pro-de-User-2:~$ brew install gcc --without-multilib
==> Using the sandbox
==> Downloading https://ftpmirror.gnu.org/gcc/gcc-6.2.0/gcc-6.2.0.tar.bz2
Already downloaded: /Users/user/Library/Caches/Homebrew/gcc-6.2.0.tar.bz2
==> Downloading https://raw.githubusercontent.com/Homebrew/formula-patches/e9e0
Already downloaded: /Users/user/Library/Caches/Homebrew/gcc--patch-863957f90a934ee8f89707980473769cff47ca0663c3906992da6afb242fb220.patch
==> Patching
==> Applying 6.1.0-jit.patch
patching file gcc/jit/Make-lang.in
==> ../configure --build=x86_64-apple-darwin15.6.0 --prefix=/usr/local/Cellar/g
==> make bootstrap
==> make install
🍺 /usr/local/Cellar/gcc/6.2.0: 1,357 files, 242.5M, built in 69 minutes 18 seconds
Então, quando prossigo para a instalação do xgboost com pip3, obtenho o seguinte:
user@MacBook-Pro-de-User-2:~$ pip3 install xgboost
Collecting xgboost
Using cached xgboost-0.6a2.tar.gz
Complete output from command python setup.py egg_info:
rm -f -rf build build_plugin lib bin *~ */*~ */*/*~ */*/*/*~ */*.o */*/*.o */*/*/*.o xgboost
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
/bin/sh: clang-omp++: command not found
make: *** [build/learner.o] Error 127
make: *** Waiting for unfinished jobs....
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/logging.o src/logging.cc >build/logging.d
/bin/sh: clang-omp++: command not found
make: *** [build/logging.o] Error 127
-----------------------------
Building multi-thread xgboost failed
Start to build single-thread xgboost
rm -f -rf build build_plugin lib bin *~ */*~ */*/*~ */*/*/*~ */*.o */*/*.o */*/*/*.o xgboost
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
/bin/sh: clang-omp++: command not found
make: *** [build/learner.o] Error 127
make: *** Waiting for unfinished jobs....
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/logging.o src/logging.cc >build/logging.d
/bin/sh: clang-omp++: command not found
make: *** [build/logging.o] Error 127
Successfully build single-thread xgboost
If you want multi-threaded version
See additional instructions in doc/build.md
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/hg/zkgs3l417b7_0l4vth4bf8l00000gn/T/pip-build-hsmd0nxh/xgboost/setup.py", line 29, in <module>
LIB_PATH = libpath['find_lib_path']()
File "/private/var/folders/hg/zkgs3l417b7_0l4vth4bf8l00000gn/T/pip-build-hsmd0nxh/xgboost/xgboost/libpath.py", line 45, in find_lib_path
'List of candidates:\n' + ('\n'.join(dll_path)))
XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?
List of candidates:
/private/var/folders/hg/zkgs3l417b7_0l4vth4bf8l00000gn/T/pip-build-hsmd0nxh/xgboost/xgboost/libxgboost.so
/private/var/folders/hg/zkgs3l417b7_0l4vth4bf8l00000gn/T/pip-build-hsmd0nxh/xgboost/xgboost/../../lib/libxgboost.so
/private/var/folders/hg/zkgs3l417b7_0l4vth4bf8l00000gn/T/pip-build-hsmd0nxh/xgboost/xgboost/./lib/libxgboost.so
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/hg/zkgs3l417b7_0l4vth4bf8l00000gn/T/pip-build-hsmd0nxh/xgboost/
Então tentei construí-lo conforme a documentação afirma :
Last login: Tue Aug 23 20:53:31 on ttys000
user@MacBook-Pro-de-User-2:~$ git clone --recursive https://github.com/dmlc/xgboost
Cloning into 'xgboost'...
remote: Counting objects: 17651, done.
remote: Compressing objects: 100% (28/28), done.
remote: Total 17651 (delta 9), reused 0 (delta 0), pack-reused 17611
Receiving objects: 100% (17651/17651), 5.80 MiB | 1.08 MiB/s, done.
Resolving deltas: 100% (10851/10851), done.
Checking connectivity... done.
Submodule 'dmlc-core' (https://github.com/dmlc/dmlc-core) registered for path 'dmlc-core'
Submodule 'rabit' (https://github.com/dmlc/rabit) registered for path 'rabit'
Cloning into 'dmlc-core'...
remote: Counting objects: 3710, done.
remote: Total 3710 (delta 0), reused 0 (delta 0), pack-reused 3710
Receiving objects: 100% (3710/3710), 822.86 KiB | 864.00 KiB/s, done.
Resolving deltas: 100% (2197/2197), done.
Checking connectivity... done.
Submodule path 'dmlc-core': checked out 'd8d4dccb8bd89af9f57aa19e7523f0b755563ca4'
Cloning into 'rabit'...
remote: Counting objects: 3096, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 3096 (delta 0), reused 0 (delta 0), pack-reused 3090
Receiving objects: 100% (3096/3096), 886.44 KiB | 904.00 KiB/s, done.
Resolving deltas: 100% (2007/2007), done.
Checking connectivity... done.
Submodule path 'rabit': checked out '2dd7476ad7e4afe97eb579d39aab226ff74400a6'
Então, tentei construir da seguinte maneira:
user@MacBook-Pro-de-User-2:/$ cd xgboost; cp make/config.mk ./config.mk; make -j4
-bash: cd: xgboost: No such file or directory
cp: make/config.mk: No such file or directory
make: *** No targets specified and no makefile found. Stop.
Alguma ideia de como instalar o xgboost corretamente? ... há um mês instalei o xgboost com o pip3 e não enfrentei os problemas acima.
Aparentemente, isso funcionou para OSX:
user@MacBook-Pro-de-User-2:~$ cd xgboost/
user@MacBook-Pro-de-User-2:~/xgboost$ clear
user@MacBook-Pro-de-User-2:~/xgboost$ ls
CMakeLists.txt R-package/ doc/ rabit/
CONTRIBUTORS.md README.md include/ src/
ISSUE_TEMPLATE.md amalgamation/ jvm-packages/ tests/
LICENSE build.sh* make/
Makefile demo/ plugin/
NEWS.md dmlc-core/ python-package/
user@MacBook-Pro-de-User-2:~/xgboost$ ./build.sh
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/learner.cc -o build/learner.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/logging.o src/logging.cc >build/logging.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/logging.cc -o build/logging.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/c_api/c_api.o src/c_api/c_api.cc >build/c_api/c_api.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/c_api/c_api.cc -o build/c_api/c_api.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/c_api/c_api_error.o src/c_api/c_api_error.cc >build/c_api/c_api_error.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/c_api/c_api_error.cc -o build/c_api/c_api_error.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/common/common.o src/common/common.cc >build/common/common.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/common/common.cc -o build/common/common.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/data/data.o src/data/data.cc >build/data/data.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/data/data.cc -o build/data/data.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/data/simple_csr_source.o src/data/simple_csr_source.cc >build/data/simple_csr_source.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/data/simple_csr_source.cc -o build/data/simple_csr_source.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/data/simple_dmatrix.o src/data/simple_dmatrix.cc >build/data/simple_dmatrix.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/data/simple_dmatrix.cc -o build/data/simple_dmatrix.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/data/sparse_page_dmatrix.o src/data/sparse_page_dmatrix.cc >build/data/sparse_page_dmatrix.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/data/sparse_page_dmatrix.cc -o build/data/sparse_page_dmatrix.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/data/sparse_page_raw_format.o src/data/sparse_page_raw_format.cc >build/data/sparse_page_raw_format.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/data/sparse_page_raw_format.cc -o build/data/sparse_page_raw_format.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/data/sparse_page_source.o src/data/sparse_page_source.cc >build/data/sparse_page_source.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/data/sparse_page_source.cc -o build/data/sparse_page_source.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/data/sparse_page_writer.o src/data/sparse_page_writer.cc >build/data/sparse_page_writer.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/data/sparse_page_writer.cc -o build/data/sparse_page_writer.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/gbm/gblinear.o src/gbm/gblinear.cc >build/gbm/gblinear.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/gbm/gblinear.cc -o build/gbm/gblinear.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/gbm/gbm.o src/gbm/gbm.cc >build/gbm/gbm.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/gbm/gbm.cc -o build/gbm/gbm.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/gbm/gbtree.o src/gbm/gbtree.cc >build/gbm/gbtree.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/gbm/gbtree.cc -o build/gbm/gbtree.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/metric/elementwise_metric.o src/metric/elementwise_metric.cc >build/metric/elementwise_metric.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/metric/elementwise_metric.cc -o build/metric/elementwise_metric.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/metric/metric.o src/metric/metric.cc >build/metric/metric.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/metric/metric.cc -o build/metric/metric.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/metric/multiclass_metric.o src/metric/multiclass_metric.cc >build/metric/multiclass_metric.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/metric/multiclass_metric.cc -o build/metric/multiclass_metric.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/metric/rank_metric.o src/metric/rank_metric.cc >build/metric/rank_metric.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/metric/rank_metric.cc -o build/metric/rank_metric.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/objective/multiclass_obj.o src/objective/multiclass_obj.cc >build/objective/multiclass_obj.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/objective/multiclass_obj.cc -o build/objective/multiclass_obj.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/objective/objective.o src/objective/objective.cc >build/objective/objective.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/objective/objective.cc -o build/objective/objective.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/objective/rank_obj.o src/objective/rank_obj.cc >build/objective/rank_obj.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/objective/rank_obj.cc -o build/objective/rank_obj.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/objective/regression_obj.o src/objective/regression_obj.cc >build/objective/regression_obj.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/objective/regression_obj.cc -o build/objective/regression_obj.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/tree/tree_model.o src/tree/tree_model.cc >build/tree/tree_model.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/tree/tree_model.cc -o build/tree/tree_model.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/tree/tree_updater.o src/tree/tree_updater.cc >build/tree/tree_updater.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/tree/tree_updater.cc -o build/tree/tree_updater.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/tree/updater_colmaker.o src/tree/updater_colmaker.cc >build/tree/updater_colmaker.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/tree/updater_colmaker.cc -o build/tree/updater_colmaker.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/tree/updater_histmaker.o src/tree/updater_histmaker.cc >build/tree/updater_histmaker.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/tree/updater_histmaker.cc -o build/tree/updater_histmaker.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/tree/updater_prune.o src/tree/updater_prune.cc >build/tree/updater_prune.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/tree/updater_prune.cc -o build/tree/updater_prune.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/tree/updater_refresh.o src/tree/updater_refresh.cc >build/tree/updater_refresh.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/tree/updater_refresh.cc -o build/tree/updater_refresh.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/tree/updater_skmaker.o src/tree/updater_skmaker.cc >build/tree/updater_skmaker.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/tree/updater_skmaker.cc -o build/tree/updater_skmaker.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/tree/updater_sync.o src/tree/updater_sync.cc >build/tree/updater_sync.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/tree/updater_sync.cc -o build/tree/updater_sync.o
cd dmlc-core; /Library/Developer/CommandLineTools/usr/bin/make libdmlc.a config=/Users/user/xgboost/make/config.mk; cd /Users/user/xgboost
g++-6 -c -O3 -Wall -msse2 -Wno-unknown-pragmas -Iinclude -std=c++0x -fopenmp -fPIC -DDMLC_USE_HDFS=0 -DDMLC_USE_S3=0 -DDMLC_USE_AZURE=0 -o line_split.o src/io/line_split.cc
g++-6 -c -O3 -Wall -msse2 -Wno-unknown-pragmas -Iinclude -std=c++0x -fopenmp -fPIC -DDMLC_USE_HDFS=0 -DDMLC_USE_S3=0 -DDMLC_USE_AZURE=0 -o recordio_split.o src/io/recordio_split.cc
g++-6 -c -O3 -Wall -msse2 -Wno-unknown-pragmas -Iinclude -std=c++0x -fopenmp -fPIC -DDMLC_USE_HDFS=0 -DDMLC_USE_S3=0 -DDMLC_USE_AZURE=0 -o input_split_base.o src/io/input_split_base.cc
g++-6 -c -O3 -Wall -msse2 -Wno-unknown-pragmas -Iinclude -std=c++0x -fopenmp -fPIC -DDMLC_USE_HDFS=0 -DDMLC_USE_S3=0 -DDMLC_USE_AZURE=0 -o io.o src/io.cc
g++-6 -c -O3 -Wall -msse2 -Wno-unknown-pragmas -Iinclude -std=c++0x -fopenmp -fPIC -DDMLC_USE_HDFS=0 -DDMLC_USE_S3=0 -DDMLC_USE_AZURE=0 -o local_filesys.o src/io/local_filesys.cc
g++-6 -c -O3 -Wall -msse2 -Wno-unknown-pragmas -Iinclude -std=c++0x -fopenmp -fPIC -DDMLC_USE_HDFS=0 -DDMLC_USE_S3=0 -DDMLC_USE_AZURE=0 -o data.o src/data.cc
g++-6 -c -O3 -Wall -msse2 -Wno-unknown-pragmas -Iinclude -std=c++0x -fopenmp -fPIC -DDMLC_USE_HDFS=0 -DDMLC_USE_S3=0 -DDMLC_USE_AZURE=0 -o recordio.o src/recordio.cc
g++-6 -c -O3 -Wall -msse2 -Wno-unknown-pragmas -Iinclude -std=c++0x -fopenmp -fPIC -DDMLC_USE_HDFS=0 -DDMLC_USE_S3=0 -DDMLC_USE_AZURE=0 -o config.o src/config.cc
ar cr libdmlc.a line_split.o recordio_split.o input_split_base.o io.o local_filesys.o data.o recordio.o config.o
cd rabit; /Library/Developer/CommandLineTools/usr/bin/make lib/librabit.a; cd /Users/user/xgboost
g++-6 -c -O3 -msse2 -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -std=c++0x -fPIC -o allreduce_base.o src/allreduce_base.cc
g++-6 -c -O3 -msse2 -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -std=c++0x -fPIC -o allreduce_robust.o src/allreduce_robust.cc
g++-6 -c -O3 -msse2 -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -std=c++0x -fPIC -o engine.o src/engine.cc
g++-6 -c -O3 -msse2 -Wall -Wextra -Wno-unused-parameter -Wno-unknown-pragmas -std=c++0x -fPIC -o c_api.o src/c_api.cc
ar cr lib/librabit.a allreduce_base.o allreduce_robust.o engine.o c_api.o
ar crv lib/libxgboost.a build/learner.o build/logging.o build/c_api/c_api.o build/c_api/c_api_error.o build/common/common.o build/data/data.o build/data/simple_csr_source.o build/data/simple_dmatrix.o build/data/sparse_page_dmatrix.o build/data/sparse_page_raw_format.o build/data/sparse_page_source.o build/data/sparse_page_writer.o build/gbm/gblinear.o build/gbm/gbm.o build/gbm/gbtree.o build/metric/elementwise_metric.o build/metric/metric.o build/metric/multiclass_metric.o build/metric/rank_metric.o build/objective/multiclass_obj.o build/objective/objective.o build/objective/rank_obj.o build/objective/regression_obj.o build/tree/tree_model.o build/tree/tree_updater.o build/tree/updater_colmaker.o build/tree/updater_histmaker.o build/tree/updater_prune.o build/tree/updater_refresh.o build/tree/updater_skmaker.o build/tree/updater_sync.o
a - build/learner.o
a - build/logging.o
a - build/c_api/c_api.o
a - build/c_api/c_api_error.o
a - build/common/common.o
a - build/data/data.o
a - build/data/simple_csr_source.o
a - build/data/simple_dmatrix.o
a - build/data/sparse_page_dmatrix.o
a - build/data/sparse_page_raw_format.o
a - build/data/sparse_page_source.o
a - build/data/sparse_page_writer.o
a - build/gbm/gblinear.o
a - build/gbm/gbm.o
a - build/gbm/gbtree.o
a - build/metric/elementwise_metric.o
a - build/metric/metric.o
a - build/metric/multiclass_metric.o
a - build/metric/rank_metric.o
a - build/objective/multiclass_obj.o
a - build/objective/objective.o
a - build/objective/rank_obj.o
a - build/objective/regression_obj.o
a - build/tree/tree_model.o
a - build/tree/tree_updater.o
a - build/tree/updater_colmaker.o
a - build/tree/updater_histmaker.o
a - build/tree/updater_prune.o
a - build/tree/updater_refresh.o
a - build/tree/updater_skmaker.o
a - build/tree/updater_sync.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -shared -o lib/libxgboost.so build/learner.o build/logging.o build/c_api/c_api.o build/c_api/c_api_error.o build/common/common.o build/data/data.o build/data/simple_csr_source.o build/data/simple_dmatrix.o build/data/sparse_page_dmatrix.o build/data/sparse_page_raw_format.o build/data/sparse_page_source.o build/data/sparse_page_writer.o build/gbm/gblinear.o build/gbm/gbm.o build/gbm/gbtree.o build/metric/elementwise_metric.o build/metric/metric.o build/metric/multiclass_metric.o build/metric/rank_metric.o build/objective/multiclass_obj.o build/objective/objective.o build/objective/rank_obj.o build/objective/regression_obj.o build/tree/tree_model.o build/tree/tree_updater.o build/tree/updater_colmaker.o build/tree/updater_histmaker.o build/tree/updater_prune.o build/tree/updater_refresh.o build/tree/updater_skmaker.o build/tree/updater_sync.o dmlc-core/libdmlc.a rabit/lib/librabit.a -pthread -lm -fopenmp
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/cli_main.o src/cli_main.cc >build/cli_main.d
g++-6 -c -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -c src/cli_main.cc -o build/cli_main.o
g++-6 -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -o xgboost build/cli_main.o build/learner.o build/logging.o build/c_api/c_api.o build/c_api/c_api_error.o build/common/common.o build/data/data.o build/data/simple_csr_source.o build/data/simple_dmatrix.o build/data/sparse_page_dmatrix.o build/data/sparse_page_raw_format.o build/data/sparse_page_source.o build/data/sparse_page_writer.o build/gbm/gblinear.o build/gbm/gbm.o build/gbm/gbtree.o build/metric/elementwise_metric.o build/metric/metric.o build/metric/multiclass_metric.o build/metric/rank_metric.o build/objective/multiclass_obj.o build/objective/objective.o build/objective/rank_obj.o build/objective/regression_obj.o build/tree/tree_model.o build/tree/tree_updater.o build/tree/updater_colmaker.o build/tree/updater_histmaker.o build/tree/updater_prune.o build/tree/updater_refresh.o build/tree/updater_skmaker.o build/tree/updater_sync.o dmlc-core/libdmlc.a rabit/lib/librabit.a -pthread -lm -fopenmp
Successfully build multi-thread xgboost
user@MacBook-Pro-de-User-2:~/xgboost$ cd python-package; python3 setup.py install
Install libxgboost from: ['/Users/user/xgboost/python-package/xgboost/../../lib/libxgboost.so']
running install
running bdist_egg
running egg_info
creating xgboost.egg-info
writing xgboost.egg-info/PKG-INFO
writing dependency_links to xgboost.egg-info/dependency_links.txt
writing top-level names to xgboost.egg-info/top_level.txt
writing requirements to xgboost.egg-info/requires.txt
writing manifest file 'xgboost.egg-info/SOURCES.txt'
reading manifest file 'xgboost.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*' under directory 'xgboost/include'
warning: no files found matching '*' under directory 'xgboost/src'
warning: no files found matching '*' under directory 'xgboost/make'
warning: no files found matching '*' under directory 'xgboost/rabit'
warning: no files found matching '*' under directory 'xgboost/lib'
warning: no files found matching '*' under directory 'xgboost/dmlc-core'
warning: no previously-included files matching '*.o' found anywhere in distribution
warning: no previously-included files matching '*.a' found anywhere in distribution
warning: no previously-included files matching '*.pyo' found anywhere in distribution
warning: no previously-included files matching '*.pyc' found anywhere in distribution
writing manifest file 'xgboost.egg-info/SOURCES.txt'
installing library code to build/bdist.macosx-10.11-x86_64/egg
running install_lib
running build_py
creating build
creating build/lib
creating build/lib/xgboost
copying xgboost/__init__.py -> build/lib/xgboost
copying xgboost/callback.py -> build/lib/xgboost
copying xgboost/compat.py -> build/lib/xgboost
copying xgboost/core.py -> build/lib/xgboost
copying xgboost/libpath.py -> build/lib/xgboost
copying xgboost/plotting.py -> build/lib/xgboost
copying xgboost/rabit.py -> build/lib/xgboost
copying xgboost/sklearn.py -> build/lib/xgboost
copying xgboost/training.py -> build/lib/xgboost
copying xgboost/VERSION -> build/lib/xgboost
copying xgboost/build-python.sh -> build/lib/xgboost
creating build/bdist.macosx-10.11-x86_64
creating build/bdist.macosx-10.11-x86_64/egg
creating build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/__init__.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/build-python.sh -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/callback.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/compat.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/core.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/libpath.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/plotting.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/rabit.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/sklearn.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/training.py -> build/bdist.macosx-10.11-x86_64/egg/xgboost
copying build/lib/xgboost/VERSION -> build/bdist.macosx-10.11-x86_64/egg/xgboost
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/__init__.py to __init__.cpython-35.pyc
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/callback.py to callback.cpython-35.pyc
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/compat.py to compat.cpython-35.pyc
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/core.py to core.cpython-35.pyc
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/libpath.py to libpath.cpython-35.pyc
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/plotting.py to plotting.cpython-35.pyc
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/rabit.py to rabit.cpython-35.pyc
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/sklearn.py to sklearn.cpython-35.pyc
byte-compiling build/bdist.macosx-10.11-x86_64/egg/xgboost/training.py to training.cpython-35.pyc
installing package data to build/bdist.macosx-10.11-x86_64/egg
running install_data
copying /Users/user/xgboost/python-package/xgboost/../../lib/libxgboost.so -> build/bdist.macosx-10.11-x86_64/egg/xgboost
creating build/bdist.macosx-10.11-x86_64/egg/EGG-INFO
copying xgboost.egg-info/PKG-INFO -> build/bdist.macosx-10.11-x86_64/egg/EGG-INFO
copying xgboost.egg-info/SOURCES.txt -> build/bdist.macosx-10.11-x86_64/egg/EGG-INFO
copying xgboost.egg-info/dependency_links.txt -> build/bdist.macosx-10.11-x86_64/egg/EGG-INFO
copying xgboost.egg-info/not-zip-safe -> build/bdist.macosx-10.11-x86_64/egg/EGG-INFO
copying xgboost.egg-info/requires.txt -> build/bdist.macosx-10.11-x86_64/egg/EGG-INFO
copying xgboost.egg-info/top_level.txt -> build/bdist.macosx-10.11-x86_64/egg/EGG-INFO
creating dist
creating 'dist/xgboost-0.6-py3.5.egg' and adding 'build/bdist.macosx-10.11-x86_64/egg' to it
removing 'build/bdist.macosx-10.11-x86_64/egg' (and everything under it)
Processing xgboost-0.6-py3.5.egg
creating /usr/local/lib/python3.5/site-packages/xgboost-0.6-py3.5.egg
Extracting xgboost-0.6-py3.5.egg to /usr/local/lib/python3.5/site-packages
Adding xgboost 0.6 to easy-install.pth file
Installed /usr/local/lib/python3.5/site-packages/xgboost-0.6-py3.5.egg
Processing dependencies for xgboost==0.6
Searching for scipy==0.18.0
Best match: scipy 0.18.0
Adding scipy 0.18.0 to easy-install.pth file
Using /usr/local/lib/python3.5/site-packages
Searching for numpy==1.11.1
Best match: numpy 1.11.1
Adding numpy 1.11.1 to easy-install.pth file
Using /usr/local/lib/python3.5/site-packages
Finished processing dependencies for xgboost==0.6
Porém, gostaria de saber se existe uma maneira mais fácil de instalar, alguma sugestão pessoal ?.
@alonsopg a instalação atual de pip
requer gcc-5
ou clang-omp
que podem ser instalados através de brew
. Isso foi feito antes da recente atualização das instruções. Como os principais usuários do Mac OS X agora usam gcc-6
, atualizarei a próxima versão para gcc-6, enquanto isso, instale do github conforme você compilou
1 também deparei exatamente com esse problema. Muito complicado de descobrir. Observe também que o clang-omp não é mais um pacote de cerveja:
$ brew install clang-omp
Error: No available formula with the name "clang-omp"
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
==> Searching taps...
Error: No formulae found in taps.
@samuela , você quer tentar brew install --with-clang llvm
porque clang-omp
foi movido
@phunterlau Ainda não consigo fazer pip install xgboost
funcionar no Mac 10.12.3
Estou entendendo:
XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?
Eu tentei:
$ brew install clang-omp
Error: No available formula with the name "clang-omp"
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
==> Searching taps...
Error: No formulae found in taps.
$ brew install --with-clang llvm
Warning: llvm: this formula has no --with-clang option so it will be ignored!
# snip
$ export PATH="/usr/local/opt/llvm/bin:$PATH"
$ export LDFLAGS="-L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib"
$ export CPPFLAGS="-I/usr/local/opt/llvm/include"
$ pip install xgboost
# snip
XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?
# snip
$ brew install gcc --without-multilib
$ pip install xgboost
# snip
XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?
# snip
Como devemos instalar isso de PyPi
no Mac 10.12? A instalação da fonte não é uma solução.
@JoeNyland talvez você precise:
brew install cmake
Talvez você possa obter algumas ideias em https://github.com/dmlc/xgboost/issues/463 .
@ d2Code Obrigado, mas continuo brew install cmake
:
$ pip install xgboost
...
XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?
...
@JoeNyland Você pode tentar instalar o xgboost a partir do código-fonte, não pelo pip.
@ d2Code Eu sei que posso instalar a partir da fonte, mas preciso instalar a partir do pip. Estou tentando descobrir por que não consigo instalar a partir do pip.
Como devemos instalar isso de
PyPi
no Mac 10.12? A instalação da fonte não é uma solução.
@evanuk Obrigado pela sua sugestão. Infelizmente estou recebendo a mesma mensagem de erro de antes, mesmo com o seu comando acima 😕
$ env CC=gcc CXX=gcc pip install xgboost
Collecting xgboost
Using cached xgboost-0.6a2.tar.gz
Complete output from command python setup.py egg_info:
rm -f -rf build build_plugin lib bin *~ */*~ */*/*~ */*/*/*~ */*.o */*/*.o */*/*/*.o xgboost
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
/bin/sh: clang-omp++: command not found
make: *** [build/learner.o] Error 127
make: *** Waiting for unfinished jobs....
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/logging.o src/logging.cc >build/logging.d
/bin/sh: clang-omp++: command not found
make: *** [build/logging.o] Error 127
-----------------------------
Building multi-thread xgboost failed
Start to build single-thread xgboost
rm -f -rf build build_plugin lib bin *~ */*~ */*/*~ */*/*/*~ */*.o */*/*.o */*/*/*.o xgboost
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
/bin/sh: clang-omp++: command not found
make: *** [build/learner.o] Error 127
make: *** Waiting for unfinished jobs....
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/logging.o src/logging.cc >build/logging.d
/bin/sh: clang-omp++: command not found
make: *** [build/logging.o] Error 127
Successfully build single-thread xgboost
If you want multi-threaded version
See additional instructions in doc/build.md
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/91/nqdcr19d0xg6sjdb4m3vcc3c0000gn/T/pip-build-ozos8fjf/xgboost/setup.py", line 29, in <module>
LIB_PATH = libpath['find_lib_path']()
File "/private/var/folders/91/nqdcr19d0xg6sjdb4m3vcc3c0000gn/T/pip-build-ozos8fjf/xgboost/xgboost/libpath.py", line 45, in find_lib_path
'List of candidates:\n' + ('\n'.join(dll_path)))
XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?
List of candidates:
/private/var/folders/91/nqdcr19d0xg6sjdb4m3vcc3c0000gn/T/pip-build-ozos8fjf/xgboost/xgboost/libxgboost.so
/private/var/folders/91/nqdcr19d0xg6sjdb4m3vcc3c0000gn/T/pip-build-ozos8fjf/xgboost/xgboost/../../lib/libxgboost.so
/private/var/folders/91/nqdcr19d0xg6sjdb4m3vcc3c0000gn/T/pip-build-ozos8fjf/xgboost/xgboost/./lib/libxgboost.so
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/91/nqdcr19d0xg6sjdb4m3vcc3c0000gn/T/pip-build-ozos8fjf/xgboost/
$ brew info gcc | head -n 5
gcc: stable 6.3.0 (bottled), HEAD
GNU compiler collection
https://gcc.gnu.org/
/usr/local/Cellar/gcc/6.3.0_1 (1,358 files, 237.8MB) *
Built from source on 2017-04-06 at 11:53:19 with: --without-multilib
Sucesso! 🎉
Eu encontrei isso aqui :
O compilador clang LLVM no Mac OS X da Xcode não oferece suporte a multi-thread OpenMP. Uma escolha alternativa é instalar o homebrew http://brew.sh/ e o brew install g ++ - 5 que fornece suporte OpenMP multi-thread.
Tendo isso em mente, tentei fazer isso e me permite instalar a partir do pip!
$ brew install gcc<strong i="12">@5</strong>
$ pip install xgboost
Não tenho ideia de por que isso funciona, mas brew install gcc --without-multilib
não.
Não posso deixar de pensar que outros usuários vão cair nessa armadilha e perder tempo tentando descobrir o que realmente está errado. Espero que esta solução alternativa funcione para eles, mas eu prefiro ver uma rotina de instalação mais confiável do pacote pip 🤞
A solução de @JoeNyland também funcionou para mim. Obrigado!!
obrigado pela sua solução! @JoeNyland
Eu não usei pip para isso. Ocorreram alguns erros na documentação, mas se você seguir o link abaixo, existem algumas maneiras de resolver isso.
Eu instalei gcc7.1.0 com brew install gcc --without-multilib
, em seguida, clonado xgboost, cd-ed na pasta e editei make/config.mk
para ter
# choice of compiler, by default use system preference.
export CC = gcc-7
export CXX = g++-7
# export MPICXX = mpicxx
e finalmente executou cp make/minimum.mk ./config.mk; make -j4
então cd-ed em python-package
e executou sudo python3 setup.py install
Joe Você é incrível!
@JoeNyland encontrou exatamente o mesmo problema e sua solução foi perfeita. obrigada!
@JoeNyland Você é meu herói! Às vezes, só precisamos da atitude teimosa, caso contrário, nenhum problema poderia ser resolvido. Obrigado!
Não é a melhor solução; seria bom não ter que depender de uma versão mais antiga do GCC. Mas funciona por agora, pelo menos 🙂
No entanto, ainda recebo a seguinte mensagem de erro depois de executar
$ brew install gcc @ 5
$ pip install xgboost
Alguma ideia de por que estou recebendo isso? Muito obrigado.
make: *** [build/data/simple_dmatrix.o] Error 1
Successfully build single-thread xgboost
If you want multi-threaded version
See additional instructions in doc/build.md
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/60/6w9_z9yd24n7nwv1cg23zz340000gn/T/pip-build-B7gSEL/xgboost/setup.py", line 29, in <module>
LIB_PATH = libpath['find_lib_path']()
File "/private/var/folders/60/6w9_z9yd24n7nwv1cg23zz340000gn/T/pip-build-B7gSEL/xgboost/xgboost/libpath.py", line 45, in find_lib_path
'List of candidates:\n' + ('\n'.join(dll_path)))
__builtin__.XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?
List of candidates:
/private/var/folders/60/6w9_z9yd24n7nwv1cg23zz340000gn/T/pip-build-B7gSEL/xgboost/xgboost/libxgboost.so
/private/var/folders/60/6w9_z9yd24n7nwv1cg23zz340000gn/T/pip-build-B7gSEL/xgboost/xgboost/../../lib/libxgboost.so
/private/var/folders/60/6w9_z9yd24n7nwv1cg23zz340000gn/T/pip-build-B7gSEL/xgboost/xgboost/./lib/libxgboost.so
----------------------------------------
O comando "python setup.py egg_info" falhou com o código de erro 1 em / private / var / folders / 60 / 6w9_z9yd24n7nwv1cg23zz340000gn / T / pip-build-B7gSEL / xgboost /
@cacoderquan Ei, ainda não sei por que você está vendo esse problema. Você já tentou pip install xgboost --no-cache-dir
.
Se você ainda vir o erro, pode postar o resultado de:
python --version
pip --version
brew info gcc@5
O GitHub realmente precisa de comentários, eu examinei isso por cerca de 10 minutos, tentando lixo aleatório ao longo do caminho até finalmente ver o único comentário com mais de 100 curtidas e polegares para cima e etc (e funcionou para mim também! Então, yay! )
Existe um motivo específico para que ele funcione apenas com gcc@5
e não com qualquer gcc
pessoas atualmente / normalmente têm (eu tenho gcc 7.2.0
no momento)?
Oi pessoal, não tenho mais esperança, só vocês.
Consegui instalar o xgboost com a ajuda de okomarov.
`` `msk-wire-darkstar-m: xgboost m.keremet $ cd python-package
msk-wire-darkstar-m: python-package m.keremet $ sudo python3 setup.py install
Senha:
Instale libxgboost de: ['../lib/libxgboost.dylib']
executando instalação
executando bdist_egg
executando egg_info
criando xgboost.egg-info
escrevendo xgboost.egg-info / PKG-INFO
escrever dependency_links em xgboost.egg-info / dependency_links.txt
escrever requisitos em xgboost.egg-info / requires.txt
escrever nomes de nível superior em xgboost.egg-info / top_level.txt
gravando o arquivo de manifesto 'xgboost.egg-info / SOURCES.txt'
lendo o arquivo de manifesto 'xgboost.egg-info / SOURCES.txt'
lendo o modelo de manifesto 'MANIFEST.in'
aviso: não foram encontrados arquivos correspondentes a ' ' no diretório 'xgboost / include'aviso: não foram encontrados arquivos correspondentes a ' ' no diretório 'xgboost / src'
aviso: não foram encontrados arquivos correspondentes a ' ' no diretório 'xgboost / make'aviso: não foram encontrados arquivos correspondentes a ' ' no diretório 'xgboost / rabit'
aviso: não foram encontrados arquivos correspondentes a ' ' no diretório 'xgboost / lib'aviso: não foram encontrados arquivos correspondentes a ' ' no diretório 'xgboost / dmlc-core'
aviso: nenhum arquivo incluído anteriormente que corresponda a ' .o' encontrado em qualquer lugar na distribuiçãoaviso: nenhum arquivo incluído anteriormente que corresponda a ' .a' encontrado em qualquer lugar na distribuição
aviso: nenhum arquivo incluído anteriormente que corresponda a ' .pyo' encontrado em qualquer lugar na distribuiçãoaviso: nenhum arquivo incluído anteriormente que corresponda a ' .pyc' foi encontrado em qualquer lugar da distribuição
gravando o arquivo de manifesto 'xgboost.egg-info / SOURCES.txt'
instalando o código da biblioteca para build / bdist.macosx-10.7-x86_64 / egg
executando install_lib
executando build_py
criando construção
criando build / lib
criando build / lib / xgboost
copiando xgboost / __ init__.py -> build / lib / xgboost
copiando xgboost / callback.py -> build / lib / xgboost
copiando xgboost / compat.py -> build / lib / xgboost
copiando xgboost / core.py -> build / lib / xgboost
copiando xgboost / libpath.py -> build / lib / xgboost
copiando xgboost / plotting.py -> build / lib / xgboost
copiando xgboost / rabit.py -> build / lib / xgboost
copiando xgboost / sklearn.py -> build / lib / xgboost
copiando xgboost / training.py -> build / lib / xgboost
copiando xgboost / VERSION -> build / lib / xgboost
copiando xgboost / build-python.sh -> build / lib / xgboost
criando build / bdist.macosx-10.7-x86_64
criando build / bdist.macosx-10.7-x86_64 / egg
criando build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / __ init__.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / build-python.sh -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / callback.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / compat.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / core.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / libpath.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / plotting.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / rabit.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / sklearn.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / training.py -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
copiando build / lib / xgboost / VERSION -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / __ init__.py para __init __. cpython-36.pyc
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / callback.py para callback.cpython-36.pyc
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / compat.py para compat.cpython-36.pyc
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / core.py para core.cpython-36.pyc
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / libpath.py para libpath.cpython-36.pyc
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / plotting.py para plotting.cpython-36.pyc
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / rabit.py para rabit.cpython-36.pyc
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / sklearn.py para sklearn.cpython-36.pyc
byte-compiling build / bdist.macosx-10.7-x86_64 / egg / xgboost / training.py para training.cpython-36.pyc
instalando dados do pacote para build / bdist.macosx-10.7-x86_64 / egg
executando install_data
copiando ../lib/libxgboost.dylib -> build / bdist.macosx-10.7-x86_64 / egg / xgboost
criando build / bdist.macosx-10.7-x86_64 / egg / EGG-INFO
copiando xgboost.egg-info / PKG-INFO -> build / bdist.macosx-10.7-x86_64 / egg / EGG-INFO
copiando xgboost.egg-info / SOURCES.txt -> build / bdist.macosx-10.7-x86_64 / egg / EGG-INFO
copiando xgboost.egg-info / dependency_links.txt -> build / bdist.macosx-10.7-x86_64 / egg / EGG-INFO
copiando xgboost.egg-info / not-zip-safe -> build / bdist.macosx-10.7-x86_64 / egg / EGG-INFO
copiando xgboost.egg-info / requires.txt -> build / bdist.macosx-10.7-x86_64 / egg / EGG-INFO
copiando xgboost.egg-info / top_level.txt -> build / bdist.macosx-10.7-x86_64 / egg / EGG-INFO
criando dist
criando 'dist / xgboost-0.6-py3.6.egg' e adicionando 'build / bdist.macosx-10.7-x86_64 / egg' a ele
removendo 'build / bdist.macosx-10.7-x86_64 / egg' (e tudo sob ele)
Processando xgboost-0.6-py3.6.egg
removendo '/anaconda/lib/python3.6/site-packages/xgboost-0.6-py3.6.egg' (e tudo sob ele)
criando /anaconda/lib/python3.6/site-packages/xgboost-0.6-py3.6.egg
Extraindo xgboost-0.6-py3.6.egg para /anaconda/lib/python3.6/site-packages
xgboost 0.6 já é a versão ativa em easy-install.pth
/Anaconda/lib/python3.6/site-packages/xgboost-0.6-py3.6.egg instalado
Dependências de processamento para xgboost == 0,6
Procurando por scipy == 0.19.1
Melhor correspondência: scipy 0.19.1
Adicionando scipy 0.19.1 ao arquivo easy-install.pth
Usando /anaconda/lib/python3.6/site-packages
Procurando numpy == 1.13.1
Melhor correspondência: numpy 1.13.1
Adicionando numpy 1.13.1 ao arquivo easy-install.pth
Usando /anaconda/lib/python3.6/site-packages
Dependências de processamento concluídas para xgboost == 0,6
msk-wire-darkstar-m: python-package m.keremet $ python
Python 3.6.1 | Anaconda customizado (x86_64) | (padrão, 11 de maio de 2017, 13:04:09)
[GCC 4.2.1 compatível com Apple LLVM 6.0 (clang-600.0.57)] em darwin
Digite "ajuda", "direitos autorais", "créditos" ou "licença" para obter mais informações.
import xgboost
Seems to work since no errors. However, when I try to import xgboost in jupyter it shoots this error:
```---------------------------------------------------------------------------
OSError Traceback (most recent call last)
<ipython-input-1-1feb2e63ea38> in <module>()
3 import numpy as np
4 import pandas as pd
----> 5 import xgboost as xgb
/anaconda/lib/python3.6/site-packages/xgboost/__init__.py in <module>()
9 import os
10
---> 11 from .core import DMatrix, Booster
12 from .training import train, cv
13 from . import rabit # noqa
/anaconda/lib/python3.6/site-packages/xgboost/core.py in <module>()
110
111 # load the XGBoost library globally
--> 112 _LIB = _load_lib()
113
114
/anaconda/lib/python3.6/site-packages/xgboost/core.py in _load_lib()
104 if len(lib_path) == 0:
105 return None
--> 106 lib = ctypes.cdll.LoadLibrary(lib_path[0])
107 lib.XGBGetLastError.restype = ctypes.c_char_p
108 return lib
/anaconda/lib/python3.6/ctypes/__init__.py in LoadLibrary(self, name)
424
425 def LoadLibrary(self, name):
--> 426 return self._dlltype(name)
427
428 cdll = LibraryLoader(CDLL)
/anaconda/lib/python3.6/ctypes/__init__.py in __init__(self, name, mode, handle, use_errno, use_last_error)
346
347 if handle is None:
--> 348 self._handle = _dlopen(self._name, mode)
349 else:
350 self._handle = handle
OSError: dlopen(/anaconda/lib/python3.6/site-packages/xgboost/./lib/libxgboost.so, 6): Library not loaded: /usr/local/opt/gcc/lib/gcc/5/libgomp.1.dylib
Referenced from: /anaconda/lib/python3.6/site-packages/xgboost/./lib/libxgboost.so
Reason: image not found
Não encontrei muito sobre este erro. Alguém o encontrou?
@cacoderquan Eu encontrei um problema semelhante ao de você e descobri que na verdade o gcc não está vinculado.
Você pode querer verificar também, mas aposto que seu problema já foi resolvido.
Para outros interessados, o gcc desvinculado pode resultar de problemas de permissão de homebrew .
@JoeNyland muito obrigado por salvar meu dia.
@cacoderquan Tenho problemas semelhantes ao tentar instalar o pip xgboost
Minha versão do gcc é
gcc: stable 7.2.0 (bottled), HEAD
GNU compiler collection
https://gcc.gnu.org/
/usr/local/Cellar/gcc/7.2.0 (1,487 files, 285.2MB) *
Built from source on 2017-12-01 at 17:22:53
Tentei instalar o gcc muitas vezes, mas nada funciona. Sempre que experimentei pip install xgboost, os seguintes erros aparecem:
Collecting xgboost
Using cached xgboost-0.6a2.tar.gz
Complete output from command python setup.py egg_info:
rm -f -rf build build_plugin lib bin *~ */*~ */*/*~ */*/*/*~ */*.o */*/*.o */*/*/*.o xgboost
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
/bin/sh: clang-omp++: command not found
make: *** [build/learner.o] Error 127
make: *** Waiting for unfinished jobs....
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/logging.o src/logging.cc >build/logging.d
/bin/sh: clang-omp++: command not found
make: *** [build/logging.o] Error 127
-----------------------------
Building multi-thread xgboost failed
Start to build single-thread xgboost
rm -f -rf build build_plugin lib bin *~ */*~ */*/*~ */*/*/*~ */*.o */*/*.o */*/*/*.o xgboost
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
/bin/sh: clang-omp++: command not found
make: *** [build/learner.o] Error 127
make: *** Waiting for unfinished jobs....
clang-omp++ -std=c++0x -Wall -O3 -msse2 -Wno-unknown-pragmas -funroll-loops -Iinclude -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/logging.o src/logging.cc >build/logging.d
/bin/sh: clang-omp++: command not found
make: *** [build/logging.o] Error 127
Successfully build single-thread xgboost
If you want multi-threaded version
See additional instructions in doc/build.md
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/19/1pcpc2r57_g6gjl_2v5_4kgc0000gn/T/pip-build-q8wmsvem/xgboost/setup.py", line 29, in <module>
LIB_PATH = libpath['find_lib_path']()
File "/private/var/folders/19/1pcpc2r57_g6gjl_2v5_4kgc0000gn/T/pip-build-q8wmsvem/xgboost/xgboost/libpath.py", line 45, in find_lib_path
'List of candidates:\n' + ('\n'.join(dll_path)))
XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you install compilers and run build.sh in root path?
List of candidates:
/private/var/folders/19/1pcpc2r57_g6gjl_2v5_4kgc0000gn/T/pip-build-q8wmsvem/xgboost/xgboost/libxgboost.so
/private/var/folders/19/1pcpc2r57_g6gjl_2v5_4kgc0000gn/T/pip-build-q8wmsvem/xgboost/xgboost/../../lib/libxgboost.so
/private/var/folders/19/1pcpc2r57_g6gjl_2v5_4kgc0000gn/T/pip-build-q8wmsvem/xgboost/xgboost/./lib/libxgboost.so
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/19/1pcpc2r57_g6gjl_2v5_4kgc0000gn/T/pip-build-q8wmsvem/xgboost/
PLZ HELP
@ schen57 Está documentado em vários lugares que o método de instalação pip install xgboost
só funciona com o GCC 5.
brew install gcc@5
e tente instalar novamente.
https://github.com/dmlc/xgboost/blob/master/python-package/README.rst
https://xgboost.readthedocs.io/en/latest/build.html#building -on-macos
https://github.com/dmlc/xgboost/issues/1501#issuecomment -292209578
@alonsopg @phunterlau Gostaria de saber se este problema pode ser encerrado agora? Está ficando muito grande e fora de controle, pois há uma solução para o problema original relatado pelo OP. A correção de longo prazo para isso é permitir que o método pip install xgboost
funcione com versões atualizadas do GCC, mas acho que é melhor lidar com isso em uma questão separada focada especificamente nisso. O que você acha?
Sim combinado. A instalação do pip foi feita para a versão estável dourada do xgboost, portanto, uma versão estável do gcc foi escolhida. A instalação do pip em breve usará a versão oficial e obterá o binário pré-compilado conforme planejado.
Embora eu tenha instalado o gcc 5 (com brew), o xgboost build ainda usa a versão LLVM do gcc (7 no meu caso). Para obter a compilação para usar o gcc 5, fiz:
brew install gcc<strong i="6">@5</strong>
env CC=gcc-5 CXX=g++-5 pip install xgboost
e isso funcionou para mim.
O seguinte funcionou para mim para obter a versão mais recente do XGBoost no Anaconda sem dor:
brew
(se ainda não estiver lá)brew install gcc<strong i="12">@5</strong>
env CC=gcc-5 CXX=g++-5 pip install xgboost
Obrigado @davidread, sua solução funcionou depois de lutar por horas. Godsend !!!
Além da solução de @davidread , se pip install não funcionar para você, tente a segunda linha como:
env CC=gcc-5 CXX=g++-5 pip3 install xgboost
Isso deve funcionar!
Obrigado @davidread. Depois de lutar por horas com o gcc-7 e a opção --without-multilib (que por sinal foi desabilitada no gcc), eu me esforcei um pouco mais com o gcc-5 e o pip até que finalmente encontrei sua solução! Obrigado novamente.
@cacoderquan Eu tive o mesmo problema. Não sei se você já classificou isso (não li todos os comentários), mas consegui instalar executando primeiro o arquivo build.sh no terminal e, em seguida, executando setup.py no pacote python pasta.
Obrigado por toda a ajuda acima, e especialmente para @davidread , seu método funcionou para mim também, como podemos ter certeza de que temos multi-threading? Obrigado antecipadamente pessoal
@okomarov Sua solução para instalar o xgboost funcionou para mim. Muitíssimo obrigado!
@davidread Muito obrigado, seu método funcionou para mim!
Comentários muito úteis
Sucesso! 🎉
Eu encontrei isso aqui :
Tendo isso em mente, tentei fazer isso e me permite instalar a partir do pip!
Não tenho ideia de por que isso funciona, mas
brew install gcc --without-multilib
não.Não posso deixar de pensar que outros usuários vão cair nessa armadilha e perder tempo tentando descobrir o que realmente está errado. Espero que esta solução alternativa funcione para eles, mas eu prefiro ver uma rotina de instalação mais confiável do pacote pip 🤞