Xgboost: kegagalan pemasangan pip

Dibuat pada 2 Sep 2015  ·  72Komentar  ·  Sumber: dmlc/xgboost

root@0c6c17725a7b :/# pip install xgboost
Mengunduh/membongkar xgboost
Tidak dapat menemukan versi yang memenuhi persyaratan xgboost (dari versi: 0.4a12, 0.4a13)
Membersihkan...
Tidak ada distribusi yang cocok dengan versi untuk xgboost
Menyimpan log debug untuk kegagalan di /root/.pip/pip.log

Anda dapat mengulangi di buruh pelabuhan dengan:
docker run -it --rm ubuntu: trusty

apt-get update
apt-get install python-pip
pip install xgboost

lihat ini juga:

http://stackoverflow.com/questions/32258463/install-xgboost-under-python-failing

Komentar yang paling membantu

Saya harus membangunnya dari awal:

git clone --recursive https://github.com/dmlc/xgboost.git  
cd xgboost  
./build.sh
pip install -e python-package  

Semua 72 komentar

Sepertinya tidak berhasil untuk saya

ubuntu@ip-172-31-11-169 :~$ sudo apt-get update
... yadda yadda
ubuntu@ip-172-31-11-169 :~$ Sudo apt-get install python-pip
Membaca daftar paket... Selesai
Membangun pohon ketergantungan
Membaca informasi status... Selesai
python-pip sudah menjadi versi terbaru.
0 ditingkatkan, 0 baru dipasang, 0 untuk dihapus dan 74 tidak ditingkatkan.
ubuntu@ip-172-31-11-169 :~$ sudo pip install xgboost
Mengunduh/membongkar xgboost
Tidak dapat menemukan versi yang memenuhi persyaratan xgboost (dari versi: 0.4a12, 0.4a13)
Membersihkan...
Tidak ada distribusi yang cocok dengan versi untuk xgboost
Menyimpan log debug untuk kegagalan di /home/ubuntu/.pip/pip.log
ubuntu@ip-172-31-11-169 :~$

Saran stackoverflow dari --pre menghasilkan ini:

ubuntu@ip-172-31-11-169 :~$ Sudo pip install --sebelum xgboost
Mengunduh/membongkar xgboost
Mengunduh xgboost-0.4a13.tar.gz (690kB): 690kB diunduh
Menjalankan setup.py (path:/tmp/pip_build_root/xgboost/setup.py) egg_info untuk paket xgboost
xgboost/build-python.sh: 13: xgboost/build-python.sh: pushd: tidak ditemukan
make: * Tidak ada aturan untuk membuat target python'. Stop. ----------------------------- Building multi-thread xgboost failed Start to build single-thread xgboost make: *** No rule to make target bersih'.
Berhenti.Berhasil membangun xgboost utas tunggalJika Anda ingin versi multi-utasLihat petunjuk tambahan di doc/build.mdxgboost/build-python.sh: 26: xgboost/build-python.sh: popd: tidak ditemukan(Tidak ada, Tidak ada)Traceback (panggilan terakhir terakhir):berkas "", baris 17, di


init .py", baris 8, dalam








self._handle = _dlopen(nama_diri, mode)
OSError: /tmp/pip_build_root/xgboost/xgboost/./wrapper/libxgboostwrapper.so: header ELF tidak valid
Keluaran lengkap dari perintah python setup.py egg_info:
xgboost/build-python.sh: 13: xgboost/build-python.sh: pushd: tidak ditemukan

make: *** Tidak ada aturan untuk membuat target `python'. Berhenti.


Gagal membangun xgboost multi-utas

Mulai buat xgboost utas tunggal

make: *** Tidak ada aturan untuk membuat target `bersih'. Berhenti.

make: *** Tidak ada aturan untuk membuat target `python'. Berhenti.

Berhasil membangun xgboost utas tunggal

Jika Anda ingin versi multi-utas

Lihat petunjuk tambahan di doc/build.md

xgboost/build-python.sh: 26: xgboost/build-python.sh: popd: tidak ditemukan

(Tidak ada, Tidak ada)

Traceback (panggilan terakhir terakhir):

berkas "", baris 17, di

File "/tmp/pip_build_root/xgboost/setup.py", baris 20, di

import xgboost

File "./xgboost/ init .py", baris 8, di

from .core import DMatrix, Booster

File "./xgboost/core.py", baris 78, di

_LIB = _load_lib()

File "./xgboost/core.py", baris 72, di _load_lib

lib = ctypes.cdll.LoadLibrary(lib_path[0])

File "/usr/lib/python2.7/ctypes/ init .py", baris 443, di LoadLibrary

return self._dlltype(name)

File "/usr/lib/python2.7/ctypes/ init .py", baris 365, di init

self._handle = _dlopen(self._name, mode)

OSError: /tmp/pip_build_root/xgboost/xgboost/./wrapper/libxgboostwrapper.so: header ELF tidak valid


Membersihkan...
Perintah python setup.py egg_info gagal dengan kode kesalahan 1 di /tmp/pip_build_root/xgboost
Menyimpan log debug untuk kegagalan di /home/ubuntu/.pip/pip.log
ubuntu@ip-172-31-11-169 :~$

@cliveseldon @grfiv versi instalasi pip memiliki beberapa kebingungan, karena versi resmi 0.4 telah ada untuk waktu yang lama, dan instalasi pip berisi beberapa pembaruan terbaru dari kode sumber, jadi saya menamai versi tersebut dengan 0.4a12 0.4a13 sesuatu. Itu akan diperbaiki nanti dari rilis resmi berikutnya.

Solusi yang baik untuk memperbarui instalasi pip dapat berupa, menghapus direktori xgboost dan direktori xgboost-0.4a13.dist-info keduanya dari direktori paket situs, misalnya /User/phunterlau/python2.7/site-packages/ (lokasi instalasi dapat ditemukan dari print xgboost.__file__ ), dan ulangi 'pip install xgboost' . Terima kasih.

Halo,
Saya memiliki masalah yang sama di kotak ubuntu saya:

Untuk berlari :

sudo -H pip install --pre xgboost
python -c "import xgboost"

Gagal sebagai berikut:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/xgboost/__init__.py", line 11, in <module>
    from .core import DMatrix, Booster
  File "/usr/local/lib/python2.7/dist-packages/xgboost/core.py", line 92, in <module>
    _LIB = _load_lib()
  File "/usr/local/lib/python2.7/dist-packages/xgboost/core.py", line 86, in _load_lib
    lib = ctypes.cdll.LoadLibrary(lib_path[0])
  File "/usr/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /usr/local/lib/python2.7/dist-packages/xgboost/./wrapper/libxgboostwrapper.so: invalid ELF header

Saya juga sudah mencoba tanpa --pre , gagal secara identik.

Ada petunjuk?
Terima kasih,
F.

Saya menggunakan pip install xgboost untuk menginstal xgboost-0.4a14 pada mac OSX. Ketika saya mencoba memuatnya saya mendapatkan kesalahan ini.

OSError Traceback (panggilan terakhir terakhir)
di dalam()
----> 1 impor xgboost sebagai xgb

/Users/azaitzeff/anaconda/lib/python2.7/site-packages/xgboost/ init .py di()
9 impor os
10
---> 11 dari .core impor DMatrix, Booster
12 dari .training import train, cv
13 dari .sklearn import XGBModel, XGBClassifier, XGBRegressor

/Users/azaitzeff/anaconda/lib/python2.7/site-packages/xgboost/core.py di()
90
91 # memuat pustaka XGBoost secara global
---> 92 _LIB = _load_lib()
93
94 def _check_call(ret):

/Users/azaitzeff/anaconda/lib/python2.7/site-packages/xgboost/core.py di _load_lib()
84 jika len(lib_path) == 0:
85 kembali Tidak ada
---> 86 lib = ctypes.cdll.LoadLibrary(lib_path[0])
87 lib.XGBGetLastError.restype = ctypes.c_char_p
88 kembali lib

/Users/azaitzeff/anaconda/lib/python2.7/ctypes/ init .pyc di LoadLibrary(self, name)
441
442 def LoadLibrary(sendiri, nama):
-> 443 mengembalikan self._dlltype(nama)
444
445 cdll = LibraryLoader(CDLL)

/Users/azaitzeff/anaconda/lib/python2.7/ctypes/ init .pyc di init (self, name, mode, handle, use_errno, use_last_error)
363
364 jika pegangan Tidak Ada:
--> 365 self._handle = _dlopen(self._name, mode)
366 lainnya:
367 self._handle = pegangan

OSError: dlopen(/Users/azaitzeff/anaconda/lib/python2.7/site-packages/xgboost/./wrapper/libxgboostwrapper.so, 6): Perpustakaan tidak dimuat: /usr/local/lib/gcc/4.9/libgomp .1.dylib
Direferensikan dari: /Users/azaitzeff/anaconda/lib/python2.7/site-packages/xgboost/./wrapper/libxgboostwrapper.so
Alasan: gambar tidak ditemukan

Bantuan apa pun. Terima kasih
AZ

@AZaitzeff @Fkawala Terima kasih. Bisakah Anda mengonfirmasi apakah Anda telah menginstal gcc di ubuntu atau Mac Anda? Dengan informasi Anda, saya melihat masalah lib yang telah dikompilasi: jika tidak ada gcc yang diinstal pada sistem, skrip build di pip akan gagal. Namun, dalam paket instalasi pip, saya menyertakan lib libxgboostwrapper.so yang telah dikompilasi sebelumnya menggunakan gcc 4.9 dari brew di Mac, jadi jika skrip build gagal, xgboost akan mencari lib yang telah dikompilasi ini. Linux tidak mengenali lib Mac ini, jadi ada kesalahan kode ELF; Untuk mac tanpa OpenMP, itu akan memicu kesalahan tautan. Sekarang saya melihatnya menyebabkan beberapa kebingungan dan itu mungkin bukan ide yang baik. Saya akan memperbarui instalasi pip, dan menampilkan pesan jika tidak ada gcc. PS Kami akan memiliki lib tertaut yang telah dikompilasi dan statis dalam rilis resmi berikutnya, yang merupakan solusi yang lebih baik untuk pengiriman kode yang telah dikompilasi sebelumnya.

@phunterlau Terima kasih. Saya tidak memiliki OpenMP di Mac saya. Jadi itulah yang menyebabkan kesalahan.

@phunterlau ok, saya akan menyiapkan lingkungan kompilasi yang tepat dan menguji instalasi pip lagi.

Terima kasih atas balasan cepatnya.

Jadi saya menjalankan brew install clang-omp dan itu diinstal. Menghapus direktori xgboost dan xgboost-0.4a13.dist-info dan menjalankan ulang pip install xgboost. Menutup jendela terminal saya dan membukanya kembali. Tetapi saya masih mendapatkan kesalahan yang sama ketika mencoba mengimpor xgboost. Ada pikiran?

@AZaitzeff sebenarnya clang-omp tidak disarankan, karena dentang dari Xcode tidak mendukungnya sehingga clang-omp dapat memberikan hasil yang aneh. Paket instalasi mac pip dibuat dan diuji pada gcc 4.9 dari brew dengan OpenMP. Apakah Anda ingin mencoba dengan brew install gcc49 ? Sekarang kami memiliki gcc 5 dari brew juga, tetapi saya belum memiliki kesempatan untuk mengujinya sepenuhnya. Saya akan melakukannya di unggahan pip berikutnya.

Terima kasih itu bekerja dengan baik.

@phunterlau build (menggunakan ./xgboost/build-python.sh ) berfungsi seperti pesona. Namun, instalasi pip menghasilkan lib yang telah dikompilasi sebelumnya. Saya memodifikasi setup.py untuk menunjukkan mengapa kompilasi tidak dicoba. Dengan PIP 7.1.2 (python 2.7), untuk menjalankan:

pip install --user -e ./tweaked-xgboost-0.4a13/

memberikan:

'pip' in __file__: False
not os.name == 'nt': True

Menurut http://stackoverflow.com/questions/9959279/detect-pip-in-setup-py [1] tes 'pip' in __file__ tidak berfungsi dengan Py 2.7 2014-10-27 atau dengan instalasi khusus ( seperti yang saya gunakan dalam komentar saya sebelumnya). Seperti yang diusulkan dalam [1] 'pip' in os.environ.get('_') adalah cara yang lebih standar untuk menguji apakah pip dijalankan setup.py .

@Fkawala Terima kasih. 'pip' in __file__ adalah trik lama dari dulu, senang mengetahui yang baru. Saya akan memperbarui instalasi pip dan kemudian mengirim PR (dengan beberapa tambalan lainnya).

@phunterlau Saya memiliki masalah yang sama, tidak mengerti bagaimana cara memperbaiki kesalahan ELF ini. Saya sedang mengerjakan ubuntu dan tidak dapat mengimpor paket xgboost setelah menginstalnya dengan pip. Anda menulis tentang gcc, saya menginstal gcc-4.9, tetapi masih tidak berfungsi, apa yang saya lewatkan?

Inilah kesalahan saya:

impor xgboost

OSError Traceback (panggilan terakhir terakhir)
di dalam()
----> 1 impor xgboost
/home/antklen/anaconda/lib/python2.7/site-packages/xgboost/ init .py di()
9 impor os
10
---> 11 dari .core impor DMatrix, Booster
12 dari .training import train, cv
13 dari .sklearn import XGBModel, XGBClassifier, XGBRegressor
/home/antklen/anaconda/lib/python2.7/site-packages/xgboost/core.py di()
90
91 # memuat pustaka XGBoost secara global
---> 92 _LIB = _load_lib()
93
94 def _check_call(ret):
/home/antklen/anaconda/lib/python2.7/site-packages/xgboost/core.py di _load_lib()
84 jika len(lib_path) == 0:
85 kembali Tidak ada
---> 86 lib = ctypes.cdll.LoadLibrary(lib_path[0])
87 lib.XGBGetLastError.restype = ctypes.c_char_p
88 kembali lib
/home/antklen/anaconda/lib/python2.7/ctypes/__init__.pyc di LoadLibrary(sendiri, nama)
441
442 def LoadLibrary(sendiri, nama):
-> 443 mengembalikan self._dlltype(nama)
444
445 cdll = LibraryLoader(CDLL)
/home/antklen/anaconda/lib/python2.7/ctypes/__init__.pyc di init (self, name, mode, handle, use_errno, use_last_error)
363
364 jika pegangan Tidak Ada:
--> 365 self._handle = _dlopen(self._name, mode)
366 lainnya:
367 self._handle = pegangan
OSError: /home/antklen/anaconda/lib/python2.7/site-packages/xgboost/./wrapper/libxgboostwrapper.so: header ELF tidak valid

@antklen di windows Anda harus menginstal setuptools terlebih dahulu. saya tidak yakin apakah itu masalahnya untuk ubuntu, tetapi mungkin patut dicoba?

@antklen itu karena instalasi pip saat ini adalah skrip compiler on-the-fly dan dikirimkan dengan file .so versi Mac, jika beberapa pengguna mac tidak menginstal g++ untuk kompilasi. Ternyata bukan ide yang bagus dan menyebabkan beberapa kebingungan bagi pengguna Linux.

Solusinya, silahkan install gcc dan g++ apt-get install g++ , sehingga skrip kompilasi akan diambil.

Dan, jika pip Anda lebih baru dari 0.7.1.2, mungkin ada masalah lain dalam memeriksa apakah pip sedang berjalan. Saya akan memperbaiki dan mengirimkannya di rilis berikutnya. Jika Anda memiliki g++ tetapi masih error yang sama, silakan instal dari setup.py secara manual dengan mengikuti dokumen instalasi.

@smargsongithub @phunterlau Terima kasih atas balasannya!
apt-get install g++ juga tidak berfungsi untuk saya, tetapi saya berhasil dengan instalasi manual seperti yang dijelaskan di sini https://www.kaggle.com/c/springleaf-marketing-response/forums/t/16320/cloud-vs- pro-dan-kontra mesin lokal
Saya memiliki beberapa masalah karena saya menggunakan Anaconda, jadi resep terakhir saya adalah

sudo apt-get install make
sudo apt-get update
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install git
sudo git clone https://github.com/dmlc/xgboost
cd xgboost
sudo ./build.sh
paket cd python
sudo /home/username/anaconda/bin/python setup.py install

@antklen oh, Anda perlu sudo saat menginstal g++ :-)

@Fkawala Saya mencoba 'pip' in os.environ.get('_') untuk pip yang diperbarui, tetapi os.environ.get('_') selalu mengembalikan None dan pernyataan if ini memberikan kesalahan. Apakah kami memiliki metode lain untuk mendeteksi jika pip di baris perintah? Jika tidak, saya akan membuat setup.py terpisah hanya untuk pip dan memicu kompiler di sana. Terima kasih.

@phunterlau Saya mendapatkan traceback berikut dari pip install xgboost, ada pemikiran? (menjalankan Mac)

Traceback (panggilan terakhir terakhir):
berkas "", baris 20, di
File "/private/var/folder/7g/thc6mmqd2nb55r21htwx2slr0000gp/T/pip-build-0BlCW9/xgboost/setup.py", baris 38, di
LIB_PATH = libpath 'temukan_lib_path'
File "/private/var/folder/7g/thc6mmqd2nb55r21htwx2slr0000gp/T/pip-build-0BlCW9/xgboost/xgboost/libpath.py", baris 47, di find_lib_path
'Daftar c andidate:n ' + ('n'.join(dll_path))))
builtin .XGBoostLibraryNotFound: Tidak dapat menemukan XGBoost Libarary di jalur kandidat, apakah Anda menjalankan build.sh di jalur root?
Daftar kandidat:
/private/var/folder/7g/thc6mmqd2nb55r21htwx2slr0000gp/T/pip-build-0BlCW9/xgboost/xgboost/libxgboostwrapper.so
/private/var/folder/7g/thc6mmqd2nb55r21htwx2slr0000gp/T/pip-build-0BlCW9/xgboost/xgboost/../../wrapper/libxgboostwrapper.so
/private/var/folder/7g/thc6mmqd2nb55r21htwx2slr0000gp/T/pip-build-0BlCW9/xgboost/xgboost/./wrapper/libxgboostwrapper.so
/private/var/folder/7g/thc6mmqd2nb55r21htwx2slr0000gp/T/pip-build-0BlCW9/xgboost/xgboost/../../../xgboost/wrapper/libxgboostwrapper.so


Perintah "python setup.py egg_info" gagal dengan kode kesalahan 1 di /private/var/folders/7g/thc6mmqd2nb55r21htwx2slr0000gp/T/pip-build-0BlCW9/xgboost

@pcohen89 paket python ini dikirimkan dengan kode C++ dan dikompilasi dengan cepat, jadi Anda mungkin memerlukan kompiler. Apakah Anda sudah menginstal kompiler Anda, misalnya gcc-5 atau dentang LLVM dari Xcode? Mac tidak menginstal alat baris perintah xcode secara default dan Anda dapat mengikuti instruksi ini http://railsapps.github.io/xcode-command-line-tools.html atau, pilihan lain yang lebih baik adalah menginstal homebrew http ://brew.sh/ dan brew install g++-5 . Opsi selanjutnya (g++-5) memberikan dukungan OpenMP multi-utas.

Setelah menginstal kompiler, harap hapus instalasi xgboost lama, dan ulangi pip install xgboost

@antklen @phunterlau Mencoba mengikuti langkah-langkah yang disebutkan oleh @antklen . Sekarang, saya dapat menjalankan import xgboost di terminal. Namun pada notebook anacondas ipython itu memberi saya kesalahan di bawah ini. Mohon bantuannya. Saya menggunakan ubuntu.

XGBoostLibraryNotFound: Cannot find XGBoost Libarary in the candicate path, did you run build.sh in root path?
List of candidates:
/home/simpl/anaconda/lib/python2.7/site-packages/xgboost-0.4-py2.7.egg/xgboost/libxgboostwrapper.so
/home/simpl/anaconda/lib/python2.7/site-packages/xgboost-0.4-py2.7.egg/xgboost/../../wrapper/libxgboostwrapper.so
/home/simpl/anaconda/lib/python2.7/site-packages/xgboost-0.4-py2.7.egg/xgboost/./wrapper/libxgboostwrapper.so

@Jeechu itu berarti xgboost tidak dikompilasi, sudahkah Anda:

  1. menghapus instalasi xgboost lama?
  2. menginstal xcode (mac), atau gcc-5 (Mac menggunakan brew, linux menggunakan apt-get atau yum)?

pip install xgboost -v dapat memberi tahu lebih banyak tentang pesan kesalahan.

@phunterlau saya dan @Jeechu kami telah menghapus instalasi xgboost lama dan menginstal gcc,g++. XGBoost berjalan dengan baik melalui terminal, tetapi menggunakan notebook anaconda ipython itu memberikan kesalahan itu.

Apakah ada yang salah dengan jalur instalasi?

@rajdeltarobo @Jeechu apa versi python dari notebook ipython Anda? dan, apa variabel $PYTHONPATH Anda di .bashrc (atau file env lainnya dari shell Anda)?

Sepertinya xgboost Anda sedang mencari /home/simpl/anaconda/lib/python2.7/site-packages/xgboost-0.4-py2.7.egg/ yang bukan merupakan jalur instalasi pip (instalasi pip memiliki nomor versi tambahan misalnya xgboost-0.4a24), jadi notebook ipython mencoba mencari xgboost Anda dari python setup.py install dari github, jadi masalahnya mungkin berasal dari $PYTHONPATH

@phunterlau $PYTHONPATH tidak ditentukan, ini mengembalikan kosong. Namun, di bawah ini adalah nilai path

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/simpl/anaconda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Jalur python adalah

➜  ~  which python  
/usr/bin/python

Versi python dari notebook ipython adalah 2.7

Bagaimana kalau menambahkan sesuatu seperti ini ke PYTHONPATH Anda:
/Users/simpl/anaconda/lib/python2.7/site-packages/

jika Anda ingin menggunakan python anaconda, tetap menggunakannya untuk semuanya, jika tidak gunakan virtualenv daripada memiliki beberapa instalasi python. Sangat membingungkan jika ada beberapa instalasi python pada mesin yang sama.

@phunterlau Tidak berfungsi. Saya menggunakan ubuntu jadi ditambahkan

/home/user/anaconda/lib/python2.7/site-packages/

Meskipun, saya dapat melihat ini di akhir file Bashrc

# added by Anaconda 2.3.0 installer
export PATH="/home/user/anaconda/bin:$PATH"

@phunterlau Saya telah menginstal gcc dan berpikir itu sudah cukup. Punya Xcode dan semuanya berfungsi. Terima kasih atas dukungan Anda di Xgboost, ini luar biasa dan Anda semua sangat membantu.

@pcohen89 senang mengetahui xcode membantu. Anda mungkin menemukan xcode dentang hanya mendukung satu utas xgboost, jadi Anda mungkin ingin mencoba brew install g++-5 untuk dukungan multithread. lagi pula, copy pekerjaan adalah salinan yang bagus.

@rajdeltarobo PATH berbeda dari PYTHONPATH, di mana PYTHONPATH memungkinkan python untuk menemukan instalasi paket yang disesuaikan. Silakan tambahkan dan sumber bashrc Anda.

salin /wrapper/libxgboostwrapper.so ke /home/username/anaconda3/lib/python3.4/site-packages/xgboost-0.4-py3.4.egg/xgboost/ memecahkan masalah untuk saya (saya menggunakan Ubuntu 14.04)

masalah saya adalah:

XGBoostLibraryNotFound: Tidak dapat menemukan XGBoost Libarary di jalur kandidat, apakah Anda menjalankan build.sh di jalur root?
Daftar kandidat:
/home/simpl/anaconda/lib/python2.7/site-packages/xgboost-0.4-py2.7.egg/xgboost/libxgboostwrapper.so
/home/simpl/anaconda/lib/python2.7/site-packages/xgboost-0.4-py2.7.egg/xgboost/../../wrapper/libxgboostwrapper.so
/home/simpl/anaconda/lib/python2.7/site-packages/xgboost-0.4-py2.7.egg/xgboost/./wrapper/libxgboostwrapper.so

@davutpolat kesalahan dari pesan Anda berasal dari perubahan terbaru untuk penyelesaian konflik untuk instalasi pip, tetapi ternyata perubahan itu bukan ide yang baik, jadi kami membatalkannya (PR #572). Di masa depan, salinan ini tidak diperlukan dan kami akan memiliki konfigurasi pengaturan terpisah lainnya hanya untuk instalasi pip dengan kompilasi dengan cepat. Mohon maaf atas ketidaknyamanannya selama beberapa hari terakhir.

Saya mencoba menginstal xgboost melalui pip tetapi gagal dengan kesalahan yang sama seperti yang dimiliki @davutpolat . Saya ingin menggunakan solusinya, tetapi saya tidak tahu di mana menemukan /wrapper/libxgboostwrapper.so.

@claygirl apakah Anda memiliki gcc atau dentang di sistem Anda? tolong beri tahu env sistem Anda dan pesan kesalahan

Larutan. Saya memiliki OSError yang sama: /usr/local/lib/libxgboostwrapper.so: tidak dapat membuka file objek bersama: Tidak ada file atau direktori seperti itu. saya menyalin
site-packages/xgboost-0.4-py2.7.egg/xgboost/./wrapper/libxgboostwrapper.so ke /usr/local/lib/ dan tampaknya berfungsi.
Tapi tidak senang dengan itu karena saya memiliki 2.7 dan 3.4. ..Any resolusi baru?

@dsivakumar site-packages/xgboost-0.4-py2.7.egg/xgboost/./wrapper adalah lokasi yang diharapkan untuk libxgboostwrapper.so jika menginstal dengan pip, dan xgboost/lib_path.py telah menyertakan jalur ini jadi import xgboost dapat dengan mudah menemukannya. Jika Anda menginginkan 2.7 dan 3.4, silakan gunakan virtualenv dan instal dengan pip secara terpisah, karena pip bergantung pada versi python.

@phunterlau Terima kasih, sepertinya itu satu-satunya solusi.

Saya mencoba beberapa kali tetapi kehilangan harapan untuk menginstal xgboost di PC OS windows saya,
tapi sekarang mungkin Anda akan membantu apa yang harus dilakukan
itu kesalahannya
C:UsersSander>pip install xgboost
Mengumpulkan xgboost
Mengunduh xgboost-0.4a30.tar.gz (753kB)
100% |###########################################| 753kB 397kB/s
Tidak ada file/direktori di
c:userssanderappdatalocaltemppip-build-gqsijfxgbo
ostpip-telur-info (dari PKG-INFO)
Saya menggunakan instalasi anaconda python
Saya ingat di salah satu kompetisi kaggle, seseorang gagal menginstal xgboos dan
memilih teknik lain dan dia mendapat 2 tempat...

Pada Kamis, 7 Januari 2016 pukul 3:31, [email protected] menulis:

@phunterlau https://github.com/phunterlau Terima kasih, sepertinya itu satu-satunya
larutan.


Balas email ini secara langsung atau lihat di GitHub
https://github.com/dmlc/xgboost/issues/463#issuecomment -169595600.

@Sandy4321 Windows tidak mendukung instalasi pip sekarang karena tidak disetel untuk kompiler baris perintah VS, seperti yang disebutkan dalam panduan instalasi dan pemecahan masalah. Silakan gunakan file solusi VS di windows/ untuk mengkompilasi dan menginstal. Semoga bisa membantu Anda mendapatkan tempat ke-2 juga :-)

Saya mencoba menginstal Xgboost di Mac 10.10.5 tanpa Xcode. Saya pertama kali menginstal GCC 5.3 dengan dukungan openmp oleh brew install gcc --without-multilib. Kedua, saya membangun xgboost dengan

git clone --recursive https://github.com/dmlc/xgboost
cd xgboost
ekspor CC=/usr/local/bin/gcc-5
ekspor CXX=/usr/local/bin/g++-5
cp make/config.mk ./config.mk
buat -j4

Kemudian muncul error seperti di bawah ini,
buat: ** [lib/libxgboost.a] Kesalahan 1make: * * Menunggu pekerjaan yang belum selesai....
clangclang: : warning: warning: argumen tidak digunakan selama kompilasi: '-pthread'
argumen yang tidak digunakan selama kompilasi: '-pthread'
ld: perpustakaan tidak ditemukan untuk -lgomp
ld: perpustakaan tidak ditemukan untuk -lgomp
dentang: error: perintah tautan gagal dengan kode keluar 1 (gunakan -v untuk melihat permintaan)
dentang: error: perintah tautan gagal dengan kode keluar 1 (gunakan -v untuk melihat permintaan)
buat: ** [lib/libxgboost.so] Kesalahan 1buat: * * [xgboost] Kesalahan 1

Saya mengabaikan kesalahan dan terus berjalan. Saya mengetik kode seperti di bawah ini
sudo ./build.sh

Kemudian dikatakan
dentang: peringatan: argumen tidak digunakan selama kompilasi: '-pthread'
Berhasil membangun xgboost utas tunggal

Tolong beri tahu saya mengapa ini masih merupakan Xgboost utas tunggal meskipun saya telah menginstal GCC 5 dengan OpenMP.
Apa yang harus saya lakukan untuk mengubah Xgboost yang telah saya instal menjadi versi multi-utas?

makefile terbaru bekerja lebih baik dengan dentang-omp.

Hai, terima kasih banyak atas jawaban Anda.
Maksud Anda sekarang xgboost tidak membutuhkan gcc, dan dentang sebagai kompiler juga dapat mendukung multi-thread, bukan? Karena MAC 10.9 dan di atasnya dilengkapi dengan clang, apakah saya masih perlu mengunduh clang-omp dari homebrew
Saya seorang pemula. Saya dulu menginstal xgboost sesuai dengan metode di situs web ini. Apakah ada panduan instalasi yang diperbarui sekarang? Bisakah Anda memberi tahu saya cara mengkonfigurasinya?
Selain itu, setelah beralih ke clang-omp, apakah saya harus menghapus xgboost yang sudah diinstal terlebih dahulu, lalu menginstal ulang xgboost?
Terima kasih!

Pada 03-04-2016 01:34:37, "Hongliang Liu" [email protected] menulis:

makefile terbaru bekerja lebih baik dengan dentang-omp.


Anda menerima ini karena Anda berkomentar.
Balas email ini secara langsung atau lihat di GitHub

Thx atas balasan cepat Anda. Menurut saran Anda, saya telah mengunduh clang-omp melalui homebrew.
Lalu, apa langkah saya selanjutnya? Apakah saya harus menghapus xgboost saat ini dan menginstalnya kembali.

silahkan ubah compiler default di config.mk menjadi clang-omp. Silakan ikuti instruksi pembuatan bagian Mac OS X.

Thx atas instruksinya. Dan saya mengubah compiler default di config.mk menjadi clang-omp seperti ini
`ekspor CC = /usr/local/bin/clang-omp

ekspor CXX = /usr/local/bin/clang-omp++

ADD_CFLAGS = -fopenmp`

Lalu saya kompilasi dengan
make -j8

Namun, kesalahan muncul lagi:
buat: ** [lib/libxgboost.a] Kesalahan 1make: * * Menunggu pekerjaan yang belum selesai....
clang-3.5clang-3.5: : errorerror: : tidak ada file atau direktori seperti itu: 'rabit/lib/librabit.a'tidak ada file atau direktori seperti itu: 'rabit/lib/librabit.a'

buat: ** [lib/libxgboost.so] Kesalahan 1buat: * * [xgboost] Kesalahan 1

Apa ada yang salah denganku?

Dan aku lari
sudo ./build.sh
kesalahan muncul seperti di bawah ini

include/dmlc/omp.h:13:9: peringatan: Peringatan: OpenMP tidak tersedia, proyek akan
dikompilasi menjadi kode utas tunggal. Gunakan kompiler yang mendukung OpenMP untuk mendapatkan
manfaat dari multi-threading. [-W#pragma-pesan]

pragma message("Peringatan: OpenMP tidak tersedia, "

silakan coba instal ulang clang-omp dengan brew remove clang-omp; brew install clang-omp ; hanya ubah dua baris ini (tidak ADD_FLAG ) di config.mk , dan pastikan untuk menyalinnya ke direktori yang sama dengan Makefile .

export CC = clang-omp
export CXX = clang-omp++

dan jalankan make

Menggunakan Windows 7. Anaconda dari yhat Rodeo.

Mencoba menginstal xgboost dan mendapatkan kesalahan berikut. Tolong bantu.

`! instal pip xgboost

Mengumpulkan xgboost
Menggunakan cache xgboost-0.4a30.tar.gz
Tidak ada file/direktori di C:UsersUSERAppDataLocalTemppip-build-dkmqc8n1xgboostpip-egg-info (dari PKG-INFO)`

@phunterlau Thx atas sarannya. Saya mencoba instruksi Anda dan mendapatkan kesalahan berikut. Tolong beri beberapa saran.
Saya menginstal ulang dentang-imp dan mengubah dua baris (tanpa ADD_FLAG) di config.mk di direktori yang sama dengan Makefile

export CC = clang-omp
export CXX = clang-omp++

Kemudian saya menjalankan sudo make -j4 dan mendapatkan kesalahan berikut.

ar crv lib/libxgboost.a 
ar: no archive members specified
usage:  ar -d [-TLsv] archive file ...
    ar -m [-TLsv] archive file ...
    ar -m [-abiTLsv] position archive file ...
    ar -p [-TLsv] archive [file ...]
    ar -q [-cTLsv] archive file ...
    ar -r [-cuTLsv] archive file ...
    ar -r [-abciuTLsv] position archive file ...
    ar -t [-TLsv] archive [file ...]
    ar -x [-ouTLsv] archive [file ...]
make: *** [lib/libxgboost.a] Error 1
make: *** Waiting for unfinished jobs....
clang-3.5: warning: argument unused during compilation: '-pthread'
clang-3.5: warning: argument unused during compilation: '-pthread'

Kemudian saya menjalankan sudo ./build.sh dan mendapatkan kesalahan berikut:

ar crv lib/libxgboost.a 
ar: no archive members specified
usage:  ar -d [-TLsv] archive file ...
    ar -m [-TLsv] archive file ...
    ar -m [-abiTLsv] position archive file ...
    ar -p [-TLsv] archive [file ...]
    ar -q [-cTLsv] archive file ...
    ar -r [-cuTLsv] archive file ...
    ar -r [-abciuTLsv] position archive file ...
    ar -t [-TLsv] archive [file ...]
    ar -x [-ouTLsv] archive [file ...]
make: *** [lib/libxgboost.a] Error 1
-----------------------------
Building multi-thread xgboost failed

Halo semuanya,
Untuk menginstal Xgboost di Windows menggunakan Python, ikuti instruksi di utas berikut.

http://stackoverflow.com/questions/33749735/how-to-install-xgboost-package-in-python-windows-platform

@boral ya, pemasangan pip saat ini tidak mendukung platform jendela. senang bahwa Anda telah mengetahuinya

@liyanjin Anda bisa melakukan 'make xgboost' untuk bagian inti. untuk memiliki ar, Anda mungkin perlu menginstal ar untuk mac

Saya menghadapi masalah serupa. Kesalahan saya cukup

OSError: dlopen(/Users/mlal/anaconda/lib/python2.7/site-packages/libxgboostwrapper.so, 6): Library not loaded: @rpath/./libgomp.1.dylib
  Referenced from: /Users/mlal/anaconda/lib/python2.7/site-packages/libxgboostwrapper.so
  Reason: image not found

Saya memeriksa saya telah menginstal gcc.
$ brew install gcc49
Peringatan: homebrew/versions/gcc49-4.9.3 sudah diinstal

Saya menggunakan mac os saya menginstal xgboost melalui anaconda

@lalmanisha Saya yakin Anda menggunakan Mac. Praktik terbaik saat ini di Mac menggunakan clang-omp alih-alih gcc . Bisakah Anda mencoba menginstal clang-omp dari brew dan mengubah CC dan CXX di config.mk menjadi clang-omp?

Terima kasih untuk balasan Anda. Saya masih mendapatkan pesan kesalahan yang sama. Ini dia
`------------------------------------------------- -------------------------
OSError Traceback (panggilan terakhir terakhir)
di dalam()
14 # Setiap hasil yang Anda tulis ke direktori saat ini disimpan sebagai output.
15
---> 16 impor xgboost sebagai xgb
17 dari sklearn.linear_model impor LogisticRegression
18 impor panda sebagai pd

/Users/mlal/anaconda/lib/python2.7/site-packages/xgboost.py di()
80
81 # memuat pustaka XGBoost secara global
---> 82 xglib = load_xglib()
83
84

/Users/mlal/anaconda/lib/python2.7/site-packages/xgboost.py di load_xglib()
57 jika len(dll_path) == 0:
58 raise XGBoostLibraryNotFound('tidak dapat menemukan menemukan file di jalur kandidat ' + str(dll_path))
---> 59 lib = ctypes.cdll.LoadLibrary(lib_path[0])
60
61 # fungsi DMatrix

/Users/mlal/anaconda/lib/python2.7/ctypes/ init .pyc di LoadLibrary(sendiri, nama)
441
442 def LoadLibrary(sendiri, nama):
-> 443 mengembalikan self._dlltype(nama)
444
445 cdll = LibraryLoader(CDLL)

/Users/mlal/anaconda/lib/python2.7/ctypes/ init .pyc di init (self, name, mode, handle, use_errno, use_last_error)
363
364 jika pegangan Tidak Ada:
--> 365 self._handle = _dlopen(self._name, mode)
366 lainnya:
367 self._handle = pegangan

OSError: dlopen(/Users/mlal/anaconda/lib/python2.7/site-packages/libxgboostwrapper.so, 6): Perpustakaan tidak dimuat: @rpath/./libgomp.1.dylib
Direferensikan dari: /Users/mlal/anaconda/lib/python2.7/site-packages/libxgboostwrapper.so
Alasan: gambar tidak ditemukan
`
saya memang mengubah file config.mk seperti di bawah ini

pilihan kompiler
ekspor CC = dentang-omp
ekspor CXX = dentang-omp
ekspor MPICXX = mpicxx

sudo make -j4
di crv lib/libxgboost.a
ar: tidak ada anggota arsip yang ditentukan
penggunaan: ar -d [-TLsv] file arsip ...
ar -m [-TLsv] file arsip ...
ar -m [-abiTLsv] posisi file arsip ...
ar -p [-TLsv] arsip [file ...]
ar -q [-cTLsv] file arsip ...
ar -r [-cuTLsv] file arsip ...
ar -r [-abciuTLsv] posisikan file arsip ...
ar -t [-TLsv] arsip [file ...]
ar -x [-outlsv] arsip [file ...]
buat: ** [lib/libxgboost.a] Kesalahan 1make: * * Menunggu pekerjaan yang belum selesai....
dentang: dentang: kesalahan: kesalahan: opsi tidak didukung '-fopenmp'opsi tidak didukung '-fopenmp'

buat: ** [lib/libxgboost.so] Kesalahan 1buat: * * [xgboost] Kesalahan 1
Saat aku berlari
sudo ./build.sh

pembuat.o build/tree/updater_sync.o dmlc-core/libdmlc.a rabit/lib/librabit_empty.a -pthread -lm
dentang: peringatan: argumen tidak digunakan selama kompilasi: '-pthread'
Berhasil membangun xgboost utas tunggal
Jika Anda ingin versi multi-utas
Lihat petunjuk tambahan di doc/build.md

Saya masih mendapatkan kesalahan yang sama
dlopen(/Users/mlal/anaconda/lib/python2.7/site-packages/libxgboostwrapper.so, 6): Perpustakaan tidak dimuat: @rpath/./libgomp.1.dylib
Direferensikan dari: /Users/mlal/anaconda/lib/python2.7/site-packages/libxgboostwrapper.so
Alasan: gambar tidak ditemukan

ok, saya kira kombinasi di atas beberapa bantuan dan build.md membantu saya membuat xgboost berfungsi. Terima kasih semua !

@lalmanisha karena Anda hanya membutuhkan paket python, Anda hanya dapat make xgboost yang menghapus paket lain yang tidak perlu seperti paralel dan versi benang yang membutuhkan ar . Seharusnya berhasil make . Dan senang bahwa Anda telah mengetahuinya.

Coba instal Xgboost dengan git clone di MAC. Saya mengikuti semua instruksi dari @LiyanJin hingga jawaban ini, saya mengunduh clang-omp melalui homebrew untuk menggunakan multi-threading.

  • config.mk :
export CC = clang-omp
export CXX = clang-omp++
export MPICXX = mpicxx
  • Kesalahan:
clang-omp++ -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -fopenmp  -Idmlc-core/include -Irabit/include -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
In file included from src/learner.cc:7:
In file included from include/xgboost/logging.h:11:
In file included from dmlc-core/include/dmlc/logging.h:10:
/usr/local/Cellar/clang-omp/2015-04-01/libexec/bin/../include/c++/v1/cstdio:100:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
         ^
1 error generated.
make: *** [build/learner.o] Error 1

pip install berfungsi dengan baik, tetapi saya ingin memiliki fitur terbaru dalam paket python.

Beberapa tips?


Sunting: Temukan solusinya. Hanya xcode-select --install dan make . Semoga bisa membantu yang lain.

@armgilles yang benar: secara default mac belum menginstal kompiler dengan header sementara clang-omp membutuhkan Xcode yang diinstal lokal, menginstalnya dengan xcode-select --install semuanya setelah memutakhirkan ke sistem baru dapat menyelesaikan masalah .

Saya harus membangunnya dari awal:

git clone --recursive https://github.com/dmlc/xgboost.git  
cd xgboost  
./build.sh
pip install -e python-package  

saran hnykda bekerja untuk saya di Ubuntu 16.0.4

@phunterlau
Saya mendapatkan kesalahan yang sama.
di crv lib/libxgboost.a
ar: tidak ada anggota arsip yang ditentukan
penggunaan: ar -d [-TLsv] file arsip ...
ar -m [-TLsv] file arsip ...
ar -m [-abiTLsv] posisi file arsip ...
ar -p [-TLsv] arsip [file ...]
ar -q [-cTLsv] file arsip ...
ar -r [-cuTLsv] file arsip ...
ar -r [-abciuTLsv] posisikan file arsip ...
ar -t [-TLsv] arsip [file ...]
ar -x [-outlsv] arsip [file ...]
buat: * [lib/libxgboost.a] Kesalahan 1

saya telah menginstal ar. saya bertanya-tanya apa yang dilakukan "ar crv", jika saya dapat menggunakan perintah lain untuk menggantikannya.
Anda telah menyebutkan " @liyanjin Anda bisa melakukan 'make xgboost' untuk bagian inti. untuk memiliki ar, Anda mungkin perlu menginstal ar untuk mac", saya tidak mengerti apa yang "melakukan 'membuat xgboost' untuk bagian inti" cara. berharap untuk saran Anda

Saya telah menginstal paket pada MAC saya (macOS 10.12.3) berhasil dengan:

brew install --with-clang llvm
brew install cmake
brew install gcc --without-multilib

git clone --recursive https://github.com/dmlc/xgboost
cd xgboost; cp make/config.mk ./config.mk; make -j4

cd python-package/ ; python setup.py install

@hnykda Sering kali, solusi yang berfungsi tampaknya sederhana. Terima kasih sobat.

Solusi yang saya temukan berhasil untuk saya adalah menavigasi ke
/home/nama pengguna/anaconda3/lib/python3.5/site-packages/xgboost
dan menjalankan ./build-python.sh

Sepertinya ada banyak masalah saat menginstal xgboost. saya mencoba menginstal ke Mac, dan gagal juga. Bisakah osmeone memberi tahu saya apa solusi terakhirnya?

apa yang berhasil bagi saya adalah menambahkan yang berikut di linux ... kredit (semua orang di atas)

git clone --recursive https://github.com/dmlc/xgboost.git  
cd xgboost  
./build.sh
pip install -e python-package 
cd python-package
python setup.py install

Bagi saya bekerja di MacOS Sierra setelah:
brew install gcc --without-multilib

menjalankan perintah ini:

export CC=gcc-7
export CXX=g++-7

@philipshurpik Terima kasih banyak!

@philipshurpik Itu bekerja sangat bagus untuk saya, terima kasih!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat