Xgboost: libpath['find_lib_path']() рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ libxgboost.dll рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдкрде рджреЗрддрд╛ рд╣реИ; рд╕реЗрдЯрдЕрдк рд╕реНрдерд╛рдкрд┐рдд рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рджрд┐рд╕ре░ 2016  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: dmlc/xgboost

рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рдЬрд╛рдирдХрд╛рд░реА

рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо: рд╡рд┐рдВрдбреЛрдЬ 7

рдХрдВрдкрд╛рдЗрд▓рд░: MSVC++ 12 (рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2013)

рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкреИрдХреЗрдЬ (рдкрд╛рдпрдерди/рдЖрд░/рдЬреЗрд╡реАрдПрдо/рд╕реА++): рдкрд╛рдпрдерди 3.4.4

xgboost рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╕рдВрд╕реНрдХрд░рдг: 0.6

рдпрджрд┐ рд╕реНрд░реЛрдд рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ

  1. рдкреНрд░рддрд┐рдмрджреНрдз рд╣реИрд╢ ( git rev-parse HEAD ): e7fbc8591fa7277ee4c474b7371c48c11b34cbde
  2. рд▓реЙрдЧ:
Install 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.

рдпрджрд┐ рдЖрдк рдкрд╛рдпрдерди рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ

  1. рдЕрдЬрдЧрд░ рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рд╡рд┐рддрд░рдг - Win64 рдХреЗ рд▓рд┐рдП 3.4.4 рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирд┐рд░реНрдорд╛рдг
  2. рдпрджрд┐ рдЖрдк рд╕реНрд░реЛрдд рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ xgboost рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЖрджреЗрд╢ - python.exe setup.py install (setuptools рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ)

рдкреНрд░рдЬрдирди рдХреЗ рдЪрд░рдг

  1. рдЬреАрдердм рд╕реЗ xgboost рдХрд╛ рд╕реЛрд░реНрд╕ рдХреЛрдб рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ
  2. mkdir рдмрд┐рд▓реНрдб && cd рдмрд┐рд▓реНрдб && cmake .. -G "рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 12 2013 Win64"
  3. VS2013 рдХреЗ рд╕рд╛рде xgboost.sln рдЦреЛрд▓реЗрдВ рдФрд░ x64 рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд▓рд┐рдП рд░рд┐рд▓реАрдЬ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рд╕рднреА рд╕рдорд╛рдзрд╛рди рдмрдирд╛рдПрдВред рдЖрдкрдХреЛ lib/libxgboost.dll рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдорд┐рд▓реЗрдЧреАред
  4. cd ..python-package && python.exe setup.py install

рдЖрдкрдиреЗ рдХреНрдпрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ?

  1. SOURCES.txt рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдкрде рдмрджрд▓реЗрдВ - рдЗрд╕рдХрд╛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдлрд╝рд╛рдЗрд▓ рд╣рд░ рдмрд╛рд░ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рд╣реЛ рдЬрд╛рддреА рд╣реИ
  2. python-package/MANIFEST.in рдмрджрд▓реЗрдВ рдФрд░ lib рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдмрд╛рд╣рд░ рдХрд░реЗрдВ - рдЗрд╕рдХрд╛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ .dll рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдирд┐рдпрдо рдирд╣реАрдВ рд╣реИ
  3. рдЕрдЬрдЧрд░-рдкреИрдХреЗрдЬ/setup.py, рд▓рд╛рдЗрди 19 рдХреЛ рдмрджрд▓реЗрдВ
    LIB_PATH = libpath['find_lib_path']()
    рдкреНрд░рддрд┐
    LIB_PATH = ['../lib/libxgboost.dll']
    рдпрд╣реА рд╕рдорд╛рдзрд╛рди рдерд╛ред
    рд╡реИрд╕реЗ, рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдФрд░ XGBoost рдЯреАрдо рд╢рд╛рдпрдж рдЗрд╕реЗ рдЙрдЪрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рд╣рд▓ рдХрд░реЗрдЧреАред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореИрдВ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рд╕реЗрдВрдЯреЛрд╕ 6.5 64 рдореЗрдВ рднреА рдорд┐рд▓рд╛ рд╣реВрдВред рдореИрдВ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрддрд╛ рд╣реВрдВ рдФрд░ python-package/setup.py рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддрд╛ рд╣реВрдВред
рдмрд╕ 38 рд╡рд╛рдВ "include_package_data = False" рд╕реЗрдЯ рдХрд░реЗрдВ, рдлрд┐рд░ рдореИрдВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ "рдкрд╛рдпрдерди setup.py рдЗрдВрд╕реНрдЯреЙрд▓" рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реВрдВред рдЕрдВрдд рдореЗрдВ "xgb рдХреЗ рд░реВрдк рдореЗрдВ xgboost рдЖрдпрд╛рдд рдХрд░реЗрдВ" рд╕рд╣реА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдбреЗрдореЛ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓реАрдВред

рдЕрдВрдд рдореЗрдВ рдореИрдВ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╛рдл рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ xgboost рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░рддрд╛ рд╣реВрдВред рдкрд╛рдпрдерди рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдм рдпрд╣ рдареАрдХ рд╣реИ!


12-31-2016:
рдЬрдм рдореИрдВ xgboost рдХреЛ centos 7 x86_64 рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдлрд┐рд░ рд╕реЗ рдорд┐рд▓реАред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдореИрдВрдиреЗ xgboost рдХреЛ рдкреБрди: рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдФрд░ рдЕрдЬрдЧрд░ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ред
рдореИрдВ рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдХ рдпрд╛ рд╕реЗрдореЗрдХ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ, рд╡реЗ рджреЛрдиреЛрдВ рдареАрдХ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рдЕрдЬрдЧрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЙрд╕реА рддреНрд░реБрдЯрд┐ рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реВрдВред
рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдХрд╛рд░рдг рд╕реЗрдВрдЯреЛ 7 рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИред

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореИрдВ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рд╕реЗрдВрдЯреЛрд╕ 6.5 64 рдореЗрдВ рднреА рдорд┐рд▓рд╛ рд╣реВрдВред рдореИрдВ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрддрд╛ рд╣реВрдВ рдФрд░ python-package/setup.py рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддрд╛ рд╣реВрдВред
рдмрд╕ 38 рд╡рд╛рдВ "include_package_data = False" рд╕реЗрдЯ рдХрд░реЗрдВ, рдлрд┐рд░ рдореИрдВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ "рдкрд╛рдпрдерди setup.py рдЗрдВрд╕реНрдЯреЙрд▓" рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реВрдВред рдЕрдВрдд рдореЗрдВ "xgb рдХреЗ рд░реВрдк рдореЗрдВ xgboost рдЖрдпрд╛рдд рдХрд░реЗрдВ" рд╕рд╣реА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдбреЗрдореЛ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓реАрдВред

рдЕрдВрдд рдореЗрдВ рдореИрдВ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╛рдл рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ xgboost рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░рддрд╛ рд╣реВрдВред рдкрд╛рдпрдерди рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдм рдпрд╣ рдареАрдХ рд╣реИ!


12-31-2016:
рдЬрдм рдореИрдВ xgboost рдХреЛ centos 7 x86_64 рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдлрд┐рд░ рд╕реЗ рдорд┐рд▓реАред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдореИрдВрдиреЗ xgboost рдХреЛ рдкреБрди: рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдФрд░ рдЕрдЬрдЧрд░ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ред
рдореИрдВ рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдХ рдпрд╛ рд╕реЗрдореЗрдХ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ, рд╡реЗ рджреЛрдиреЛрдВ рдареАрдХ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рдЕрдЬрдЧрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЙрд╕реА рддреНрд░реБрдЯрд┐ рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реВрдВред
рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдХрд╛рд░рдг рд╕реЗрдВрдЯреЛ 7 рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИред

@anddelu include_package_data=False рдПрдХ рдЬрд░реВрд░реА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреИрдХреЗрдЬ рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рд▓рд┐рдП MANIFEST.in рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рд╕реНрдерд╛рдкрдирд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдкрде рдХреЛ рдирд╣реАрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ xgboost рдХреЗ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЖрдкрдХрд╛ рдЕрдВрддрд┐рдо рдЪрд░рдг рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬрд╣рд╛рдВ include_package_data=False рдЬреИрд╕рд╛ рд╣реИ рд╡реИрд╕рд╛ рд╣реА рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВ рдПрдирд╛рдХреЛрдВрдбрд╛ рдкрд╛рдпрдерди 3.5 рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓реЗ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рдореЗрдВ рдЪрд▓ рд░рд╣рд╛ рдерд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ 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
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

yananchen1989 picture yananchen1989  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ivannz picture ivannz  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tqchen picture tqchen  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

lizsz picture lizsz  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

nicoJiang picture nicoJiang  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ