在Ubuntu中安装scikit-learn时的一些问题

2024-04-29 13:33:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我只是从https://pypi.python.org/pypi/scikit-learn/下载scikit learn安装包。
在安装包之前,我使用apt get安装了几个依赖包:

sudo apt-get install build-essential python-dev python-numpy python-setuptools python-scipy libatlas-dev

转到安装目录后,运行命令python setup.py install。 但收到回复error: could not create '/usr/local/lib/python2.7/dist-packages/sklearn': Permission denied

我发现问题是关于地图集和布拉斯,但我不熟悉他们。所以我需要一些帮助来解决这个问题。我把细节贴在终端上:

appending sklearn.__check_build configuration to sklearn
Ignoring attempt to set 'name' (from 'sklearn' to 'sklearn.__check_build')
Warning: Assuming default configuration (svm/tests/{setup_tests,setup}.py was not found)Appending sklearn.svm.tests configuration to sklearn.svm
Ignoring attempt to set 'name' (from 'sklearn.svm' to 'sklearn.svm.tests')
/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1423: UserWarning: 
    Atlas (http://math-atlas.sourceforge.net/) libraries not found.
    Directories to search for the libraries can be specified in the
    numpy/distutils/site.cfg file (section [atlas]) or by setting
    the ATLAS environment variable.
  warnings.warn(AtlasNotFoundError.__doc__)
Appending sklearn.svm configuration to sklearn
Ignoring attempt to set 'name' (from 'sklearn' to 'sklearn.svm')
Appending sklearn.datasets configuration to sklearn
Ignoring attempt to set 'name' (from 'sklearn' to 'sklearn.datasets')
Warning: Assuming default configuration (./datasets/tests/setup_datasets/{setup_datasets/tests,setup}.py was not found)Appending sklearn.datasets/tests configuration to sklearn
Ignoring attempt to set 'name' (from 'sklearn' to 'sklearn.datasets/tests')
Appending sklearn.feature_extraction configuration to sklearn
Ignoring attempt to set 'name' (from 'sklearn' to 'sklearn.feature_extraction')
Warning: Assuming default configuration (./feature_extraction/tests/setup_feature_extraction/{setup_feature_extraction/tests,setup}.py was not found)Appending sklearn.feature_extraction/tests configuration to sklearn
Ignoring attempt to set 'name' (from 'sklearn' to 'sklearn.feature_extraction/tests')
Traceback (most recent call last):
  File "setup.py", line 91, in <module>
    setup(**configuration(top_path='').todict())
  File "setup.py", line 23, in configuration
    config.add_subpackage('cluster')
  File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage
    caller_level = 2)
  File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage
    caller_level = caller_level + 1)
  File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 883, in _get_configuration_from_setup_py
    ('.py', 'U', 1))
  File "./cluster/setup.py", line 8, in <module>
    from sklearn._build_utils import get_blas_info
ImportError: No module named sklearn._build_utils
hujun@hujun-OptiPlex-790:~/下载/scikit-learn-0.14.1/sklearn$ cd ..
hujun@hujun-OptiPlex-790:~/下载/scikit-learn-0.14.1$ python setup.py install
Partial import of sklearn during the build process.
blas_opt_info:
blas_mkl_info:
  libraries mkl,vml,guide not found in /usr/local/lib
  libraries mkl,vml,guide not found in /usr/lib
  libraries mkl,vml,guide not found in /usr/lib/x86_64-linux-gnu
  NOT AVAILABLE

atlas_blas_threads_info:
Setting PTATLAS=ATLAS
  libraries ptf77blas,ptcblas,atlas not found in /usr/local/lib
  libraries ptf77blas,ptcblas,atlas not found in /usr/lib
  libraries ptf77blas,ptcblas,atlas not found in /usr/lib/x86_64-linux-gnu
  NOT AVAILABLE

atlas_blas_info:
  libraries f77blas,cblas,atlas not found in /usr/local/lib
  libraries f77blas,cblas,atlas not found in /usr/lib
  libraries f77blas,cblas,atlas not found in /usr/lib/x86_64-linux-gnu
  NOT AVAILABLE

/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1423: UserWarning: 
    Atlas (http://math-atlas.sourceforge.net/) libraries not found.
    Directories to search for the libraries can be specified in the
    numpy/distutils/site.cfg file (section [atlas]) or by setting
    the ATLAS environment variable.
  warnings.warn(AtlasNotFoundError.__doc__)
blas_info:
  libraries blas not found in /usr/local/lib
  FOUND:
    libraries = ['blas']
    library_dirs = ['/usr/lib']
    language = f77

  FOUND:
    libraries = ['blas']
    library_dirs = ['/usr/lib']
    define_macros = [('NO_ATLAS_INFO', 1)]
    language = f77

sklearn/setup.py:77: UserWarning: 
    Blas (http://www.netlib.org/blas/) libraries not found.
    Directories to search for the libraries can be specified in the
    numpy/distutils/site.cfg file (section [blas]) or by setting
    the BLAS environment variable.
  warnings.warn(BlasNotFoundError.__doc__)
running install
running build
running config_cc
unifing config_cc, config, build_clib, build_ext, build commands --compiler options
running config_fc
unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options
running build_src
build_src
building library "libsvm-skl" sources
building library "cblas" sources
building extension "sklearn.__check_build._check_build" sources
building extension "sklearn.svm.libsvm" sources
building extension "sklearn.svm.liblinear" sources
building extension "sklearn.svm.libsvm_sparse" sources
building extension "sklearn.datasets._svmlight_format" sources
building extension "sklearn.feature_extraction._hashing" sources
building extension "sklearn.cluster._hierarchical" sources
building extension "sklearn.cluster._k_means" sources
building extension "sklearn.ensemble._gradient_boosting" sources
building extension "sklearn.utils.sparsetools._min_spanning_tree" sources
building extension "sklearn.utils.sparsetools._traversal" sources
building extension "sklearn.utils.sparsetools._graph_tools" sources
building extension "sklearn.utils.arraybuilder" sources
building extension "sklearn.utils.sparsefuncs" sources
building extension "sklearn.utils.arrayfuncs" sources
building extension "sklearn.utils.murmurhash" sources
building extension "sklearn.utils.lgamma" sources
building extension "sklearn.utils.graph_shortest_path" sources
building extension "sklearn.utils.seq_dataset" sources
building extension "sklearn.utils.weight_vector" sources
building extension "sklearn.utils.random" sources
building extension "sklearn.utils._logistic_sigmoid" sources
building extension "sklearn.neighbors.ball_tree" sources
building extension "sklearn.neighbors.kd_tree" sources
building extension "sklearn.neighbors.dist_metrics" sources
building extension "sklearn.neighbors.typedefs" sources
building extension "sklearn.metrics.pairwise_fast" sources
building extension "sklearn.tree._tree" sources
building extension "sklearn.metrics/cluster.expected_mutual_info_fast" sources
building extension "sklearn._hmmc" sources
building extension "sklearn._isotonic" sources
building extension "sklearn.linear_model.cd_fast" sources
building extension "sklearn.linear_model.sgd_fast" sources
building extension "sklearn.utils.sparsetools._min_spanning_tree" sources
building extension "sklearn.utils.sparsetools._traversal" sources
building extension "sklearn.utils.sparsetools._graph_tools" sources
building extension "sklearn.utils.arraybuilder" sources
building extension "sklearn.utils.sparsefuncs" sources
building extension "sklearn.utils.arrayfuncs" sources
building extension "sklearn.utils.murmurhash" sources
building extension "sklearn.utils.lgamma" sources
building extension "sklearn.utils.graph_shortest_path" sources
building extension "sklearn.utils.seq_dataset" sources
building extension "sklearn.utils.weight_vector" sources
building extension "sklearn.utils.random" sources
building extension "sklearn.utils._logistic_sigmoid" sources
building data_files sources
build_src: building npy-pkg config files
running build_py
running build_clib
customize UnixCCompiler
customize UnixCCompiler using build_clib
running build_ext
customize UnixCCompiler
customize UnixCCompiler using build_ext
resetting extension 'sklearn.svm.liblinear' language from 'f77' to 'c++'.
customize UnixCCompiler
customize UnixCCompiler using build_ext
customize GnuFCompiler
Could not locate executable g77
Could not locate executable f77
customize IntelFCompiler
Could not locate executable ifort
Could not locate executable ifc
customize LaheyFCompiler
Could not locate executable lf95
customize PGroupFCompiler
Could not locate executable pgf90
Could not locate executable pgf77
customize AbsoftFCompiler
Could not locate executable f90
customize NAGFCompiler
Could not locate executable f95
customize VastFCompiler
customize CompaqFCompiler
Could not locate executable fort
customize IntelItaniumFCompiler
Could not locate executable efort
Could not locate executable efc
customize IntelEM64TFCompiler
customize Gnu95FCompiler
Could not locate executable gfortran
customize G95FCompiler
Could not locate executable g95
customize PathScaleFCompiler
Could not locate executable pathf95
don't know how to compile Fortran code on platform 'posix'
warning: build_ext: f77_compiler=None is not available.

running scons
running install_lib
creating /usr/local/lib/python2.7/dist-packages/sklearn
error: could not create '/usr/local/lib/python2.7/dist-packages/sklearn': Permission denied

Tags: toinpybuildlibrarieslibusrsetup
1条回答
网友
1楼 · 发布于 2024-04-29 13:33:14

问题不在于ATLAS和BLAS,而在于您需要成为超级用户才能写入/usr目录。 试试看

sudo  python setup.py install

另一种方法(可能更简单)是从ubuntu存储库直接安装:

sudo apt-get install python-sklearn

相关问题 更多 >