Système d'exploitation : Windows 7
Compilateur : MSVC++ 12 (Visual Studio 2013)
Package utilisé (python/R/jvm/C++) : Python 3.4.4
xgboost
version utilisée : 0.6
Si vous installez à partir de la source, veuillez fournir
git rev-parse HEAD
): e7fbc8591fa7277ee4c474b7371c48c11b34cbdeInstall libxgboost from: ['C:\\Python34\\XGBoost\\python-package\\xgboost\\../..
/lib/libxgboost.dll']
running install
running bdist_egg
running egg_info
writing requirements to xgboost.egg-info\requires.txt
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
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.win-amd64\egg
running install_lib
running build_py
error: Error: setup script specifies an absolute path:
C:\Python34\XGBoost\python-package\xgboost\..\..\lib\libxgboost.dll
setup() arguments must *always* be /-separated paths relative to the
setup.py directory, *never* absolute paths.
Si vous utilisez un package python, veuillez fournir
xgboost
si vous n'installez pas à partir des sources - python.exe setup.py install
(via setuptools)LIB_PATH = libpath['find_lib_path']()
LIB_PATH = ['../lib/libxgboost.dll']
J'ai également rencontré cette erreur dans centos 6.5 64. Je recherche des solutions et décide de modifier le python-package/setup.py.
Il suffit de définir le 38e "include_package_data=False" puis d'exécuter "python setup.py install" avec succès. Enfin, "import xgboost as xgb" est correct. Cependant, je lance la démo, j'ai à nouveau rencontré des erreurs.
Enfin, je nettoie les fichiers puis reconstruis à nouveau le xgboost. Exécuter l'installation de python et maintenant c'est bon !
31/12/2016 :
lorsque j'installe xgboost dans centos 7 x86_64, j'ai à nouveau rencontré cette erreur. Cependant, j'ai recompilé le xgboost et je n'ai pas réussi à installer python.
J'essaie de compiler make ou cmake, ils sont tous les deux ok. Mais lorsque j'installe python et que je rencontre la même erreur.
Je me demande juste pourquoi ce n'est pas bon dans centos 7, juste à cause de la version.
@anddelu include_package_data=False
est un must car il utilise MANIFEST.in
pour la maintenance du paquet et cela n'affecte que l'installation, pas le chemin. Je pense que votre dernière étape de reconstruction de xgboost est la bonne solution où include_package_data=False
devrait rester tel quel.
Je rencontrais la même erreur sur Linux exécutant Anaconda Python 3.5.
Je pense l'avoir corrigé en apportant les modifications suivantes à setup.py :
diff --git a/python-package/setup.py b/python-package/setup.py
index 27fc212..ec9b806 100644
--- a/python-package/setup.py
+++ b/python-package/setup.py
@@ -7,7 +7,7 @@ from setuptools import setup, find_packages
# import subprocess
sys.path.insert(0, '.')
-CURRENT_DIR = os.path.dirname(__file__)
+CURRENT_DIR = os.path.abspath(os.path.dirname(__file__))
# We can not import `xgboost.libpath` in setup.py directly since xgboost/__init__.py
# import `xgboost.core` and finally will import `numpy` and `scipy` which are setup
@@ -17,6 +17,7 @@ libpath = {'__file__': libpath_py}
exec(compile(open(libpath_py, "rb").read(), libpath_py, 'exec'), libpath, libpath)
LIB_PATH = libpath['find_lib_path']()
+LIB_PATH = [os.path.relpath(LIB_PATH[0], CURRENT_DIR)]
print("Install libxgboost from: %s" % LIB_PATH)
# Please use setup_pip.py for generating and deploying pip installation
# detailed instruction in setup_pip.py
Commentaire le plus utile
J'ai également rencontré cette erreur dans centos 6.5 64. Je recherche des solutions et décide de modifier le python-package/setup.py.
Il suffit de définir le 38e "include_package_data=False" puis d'exécuter "python setup.py install" avec succès. Enfin, "import xgboost as xgb" est correct. Cependant, je lance la démo, j'ai à nouveau rencontré des erreurs.
Enfin, je nettoie les fichiers puis reconstruis à nouveau le xgboost. Exécuter l'installation de python et maintenant c'est bon !
31/12/2016 :
lorsque j'installe xgboost dans centos 7 x86_64, j'ai à nouveau rencontré cette erreur. Cependant, j'ai recompilé le xgboost et je n'ai pas réussi à installer python.
J'essaie de compiler make ou cmake, ils sont tous les deux ok. Mais lorsque j'installe python et que je rencontre la même erreur.
Je me demande juste pourquoi ce n'est pas bon dans centos 7, juste à cause de la version.