qinglong icon indicating copy to clipboard operation
qinglong copied to clipboard

安装pandas库报错

Open sdcxzx opened this issue 2 years ago • 4 comments

root@qinglong:/ql/config $ pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Collecting pandas Using cached https://pypi.tuna.tsinghua.edu.cn/packages/4d/aa/e7078569d20f45e8cf6512a24bf2945698f13a7975650773c01366ea96dc/pandas-1.4.0.tar.gz (4.9 MB) Installing build dependencies ... error error: subprocess-exited-with-error

× pip subprocess to install build dependencies did not run successfully. │ exit code: 1 ╰─> [272 lines of output] Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Collecting setuptools>=51.0.0 Using cached https://pypi.tuna.tsinghua.edu.cn/packages/ad/65/7b98718c0ecebbdae5a5251fffc43dd3800ff3d1a6f7cc1aa09cfbcf17a5/setuptools-60.8.2-py3-none-any.whl (1.1 MB) Collecting wheel Using cached https://pypi.tuna.tsinghua.edu.cn/packages/27/d6/003e593296a85fd6ed616ed962795b2f87709c3eee2bca4f6d0fe55c6d00/wheel-0.37.1-py2.py3-none-any.whl (35 kB) Collecting Cython<3,>=0.29.24 Using cached https://pypi.tuna.tsinghua.edu.cn/packages/6f/f5/18bb7c9b9e992141f4212dc358a7b06d24c79dee6b9c51658c7e86c767e1/Cython-0.29.27-cp39-cp39-musllinux_1_1_x86_64.whl (2.1 MB) Collecting oldest-supported-numpy>=0.10 Using cached https://pypi.tuna.tsinghua.edu.cn/packages/45/77/6ccb4e20a4e86e8711c512ae88bd7db8d8e895692eba8c2f519eccbb619e/oldest_supported_numpy-2022.1.30-py3-none-any.whl (3.9 kB) Collecting numpy==1.19.3 Using cached https://pypi.tuna.tsinghua.edu.cn/packages/cb/c0/7b3d69e6ee68bc54c97ba51f8c3c3e43ff1dbc7bd97347cc19a1f944e60a/numpy-1.19.3.zip (7.3 MB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'error' error: subprocess-exited-with-error

    × Preparing metadata (pyproject.toml) did not run successfully.
    │ exit code: 1
    ╰─> [240 lines of output]
        Running from numpy source directory.
        setup.py:480: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
          run_build = parse_setuppy_commands()
        Processing numpy/random/_bounded_integers.pxd.in
        Processing numpy/random/_generator.pyx
        Processing numpy/random/bit_generator.pyx
        Processing numpy/random/_bounded_integers.pyx.in
        Processing numpy/random/mtrand.pyx
        Processing numpy/random/_common.pyx
        Processing numpy/random/_mt19937.pyx
        Processing numpy/random/_philox.pyx
        Processing numpy/random/_sfc64.pyx
        Processing numpy/random/_pcg64.pyx
        Cythonizing sources
        blas_opt_info:
        blas_mkl_info:
        customize UnixCCompiler
          libraries mkl_rt not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        blis_info:
          libraries blis not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        openblas_info:
          libraries openblas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        atlas_3_10_blas_threads_info:
        Setting PTATLAS=ATLAS
          libraries tatlas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        atlas_3_10_blas_info:
          libraries satlas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        atlas_blas_threads_info:
        Setting PTATLAS=ATLAS
          libraries ptf77blas,ptcblas,atlas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        atlas_blas_info:
          libraries f77blas,cblas,atlas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        accelerate_info:
          NOT AVAILABLE
  
        /tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/system_info.py:1914: UserWarning:
            Optimized (vendor) Blas libraries are not found.
            Falls back to netlib Blas library which has worse performance.
            A better performance should be easily gained by switching
            Blas library.
          if self._calc_info(blas):
        blas_info:
          libraries blas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        /tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/system_info.py:1914: 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.
          if self._calc_info(blas):
        blas_src_info:
          NOT AVAILABLE
  
        /tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/system_info.py:1914: UserWarning:
            Blas (http://www.netlib.org/blas/) sources not found.
            Directories to search for the sources can be specified in the
            numpy/distutils/site.cfg file (section [blas_src]) or by setting
            the BLAS_SRC environment variable.
          if self._calc_info(blas):
          NOT AVAILABLE
  
        non-existing path in 'numpy/distutils': 'site.cfg'
        lapack_opt_info:
        lapack_mkl_info:
          libraries mkl_rt not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        openblas_lapack_info:
          libraries openblas not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        openblas_clapack_info:
          libraries openblas,lapack not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        flame_info:
          libraries flame not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        atlas_3_10_threads_info:
        Setting PTATLAS=ATLAS
          libraries lapack_atlas not found in /usr/local/lib
          libraries tatlas,tatlas not found in /usr/local/lib
          libraries lapack_atlas not found in /usr/lib
          libraries tatlas,tatlas not found in /usr/lib
          libraries lapack_atlas not found in /usr/lib/
          libraries tatlas,tatlas not found in /usr/lib/
        <class 'numpy.distutils.system_info.atlas_3_10_threads_info'>
          NOT AVAILABLE
  
        atlas_3_10_info:
          libraries lapack_atlas not found in /usr/local/lib
          libraries satlas,satlas not found in /usr/local/lib
          libraries lapack_atlas not found in /usr/lib
          libraries satlas,satlas not found in /usr/lib
          libraries lapack_atlas not found in /usr/lib/
          libraries satlas,satlas not found in /usr/lib/
        <class 'numpy.distutils.system_info.atlas_3_10_info'>
          NOT AVAILABLE
  
        atlas_threads_info:
        Setting PTATLAS=ATLAS
          libraries lapack_atlas not found in /usr/local/lib
          libraries ptf77blas,ptcblas,atlas not found in /usr/local/lib
          libraries lapack_atlas not found in /usr/lib
          libraries ptf77blas,ptcblas,atlas not found in /usr/lib
          libraries lapack_atlas not found in /usr/lib/
          libraries ptf77blas,ptcblas,atlas not found in /usr/lib/
        <class 'numpy.distutils.system_info.atlas_threads_info'>
          NOT AVAILABLE
  
        atlas_info:
          libraries lapack_atlas not found in /usr/local/lib
          libraries f77blas,cblas,atlas not found in /usr/local/lib
          libraries lapack_atlas not found in /usr/lib
          libraries f77blas,cblas,atlas not found in /usr/lib
          libraries lapack_atlas not found in /usr/lib/
          libraries f77blas,cblas,atlas not found in /usr/lib/
        <class 'numpy.distutils.system_info.atlas_info'>
          NOT AVAILABLE
  
        lapack_info:
          libraries lapack not found in ['/usr/local/lib', '/usr/lib', '/usr/lib/']
          NOT AVAILABLE
  
        /tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/system_info.py:1748: UserWarning:
            Lapack (http://www.netlib.org/lapack/) libraries not found.
            Directories to search for the libraries can be specified in the
            numpy/distutils/site.cfg file (section [lapack]) or by setting
            the LAPACK environment variable.
          return getattr(self, '_calc_info_{}'.format(name))()
        lapack_src_info:
          NOT AVAILABLE
  
        /tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/system_info.py:1748: UserWarning:
            Lapack (http://www.netlib.org/lapack/) sources not found.
            Directories to search for the sources can be specified in the
            numpy/distutils/site.cfg file (section [lapack_src]) or by setting
            the LAPACK_SRC environment variable.
          return getattr(self, '_calc_info_{}'.format(name))()
          NOT AVAILABLE
  
        numpy_linalg_lapack_lite:
          FOUND:
            language = c
            define_macros = [('HAVE_BLAS_ILP64', None), ('BLAS_SYMBOL_SUFFIX', '64_')]
  
        /usr/lib/python3.9/distutils/dist.py:274: UserWarning: Unknown distribution option: 'define_macros'
          warnings.warn(msg)
        running dist_info
        running build_src
        build_src
        building py_modules sources
        creating build
        creating build/src.linux-x86_64-3.9
        creating build/src.linux-x86_64-3.9/numpy
        creating build/src.linux-x86_64-3.9/numpy/distutils
        building library "npymath" sources
        Could not locate executable gfortran
        Could not locate executable f95
        Could not locate executable ifort
        Could not locate executable ifc
        Could not locate executable lf95
        Could not locate executable pgfortran
        Could not locate executable nvfortran
        Could not locate executable f90
        Could not locate executable f77
        Could not locate executable fort
        Could not locate executable efort
        Could not locate executable efc
        Could not locate executable g77
        Could not locate executable g95
        Could not locate executable pathf95
        Could not locate executable nagfor
        don't know how to compile Fortran code on platform 'posix'
        /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: cannot find Scrt1.o: No such file or directory
        /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: cannot find crti.o: No such file or directory
        /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: cannot find -lssp_nonshared
        collect2: error: ld returned 1 exit status
        Traceback (most recent call last):
          File "/tmp/tmpoawf0bs0_in_process.py", line 363, in <module>
            main()
          File "/tmp/tmpoawf0bs0_in_process.py", line 345, in main
            json_out['return_val'] = hook(**hook_input['kwargs'])
          File "/tmp/tmpoawf0bs0_in_process.py", line 164, in prepare_metadata_for_build_wheel
            return hook(metadata_directory, config_settings)
          File "/tmp/pip-build-env-76dejotd/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 157, in prepare_metadata_for_build_wheel
            self.run_setup()
          File "/tmp/pip-build-env-76dejotd/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 248, in run_setup
            super(_BuildMetaLegacyBackend,
          File "/tmp/pip-build-env-76dejotd/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 142, in run_setup
            exec(compile(code, __file__, 'exec'), locals())
          File "setup.py", line 508, in <module>
            setup_package()
          File "setup.py", line 500, in setup_package
            setup(**metadata)
          File "/tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/core.py", line 169, in setup
            return old_setup(**new_attr)
          File "/tmp/pip-build-env-76dejotd/overlay/lib/python3.9/site-packages/setuptools/__init__.py", line 165, in setup
            return distutils.core.setup(**attrs)
          File "/usr/lib/python3.9/distutils/core.py", line 148, in setup
            dist.run_commands()
          File "/usr/lib/python3.9/distutils/dist.py", line 966, in run_commands
            self.run_command(cmd)
          File "/usr/lib/python3.9/distutils/dist.py", line 985, in run_command
            cmd_obj.run()
          File "/tmp/pip-build-env-76dejotd/overlay/lib/python3.9/site-packages/setuptools/command/dist_info.py", line 31, in run
            egg_info.run()
          File "/tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/command/egg_info.py", line 24, in run
            self.run_command("build_src")
          File "/usr/lib/python3.9/distutils/cmd.py", line 313, in run_command
            self.distribution.run_command(command)
          File "/usr/lib/python3.9/distutils/dist.py", line 985, in run_command
            cmd_obj.run()
          File "/tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/command/build_src.py", line 144, in run
            self.build_sources()
          File "/tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/command/build_src.py", line 155, in build_sources
            self.build_library_sources(*libname_info)
          File "/tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/command/build_src.py", line 288, in build_library_sources
            sources = self.generate_sources(sources, (lib_name, build_info))
          File "/tmp/pip-install-tri9ob95/numpy_2637367dd1c74d4f9aac9b92245d9ad0/numpy/distutils/command/build_src.py", line 378, in generate_sources
            source = func(extension, build_dir)
          File "numpy/core/setup.py", line 663, in get_mathlib_info
            raise RuntimeError("Broken toolchain: cannot link a simple C program")
        RuntimeError: Broken toolchain: cannot link a simple C program
        [end of output]
  
    note: This error originates from a subprocess, and is likely not a problem with pip.
  error: metadata-generation-failed
  
  × Encountered error while generating package metadata.
  ╰─> See above for output.
  
  note: This is an issue with the package mentioned above, not pip.
  hint: See above for details.
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: subprocess-exited-with-error

× pip subprocess to install build dependencies did not run successfully. │ exit code: 1 ╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

sdcxzx avatar Feb 11 '22 08:02 sdcxzx

没有找到问题,但是找到解决方案了

  1. 安装conda
  2. 使用conda安装pandas
  3. 脚本调用使用shell+python的方式

安装conda

安装conda依赖(docker需要安装依赖后才可以安装好conda)

进入到docker的命令行中,一次性粘贴并回车

apk --update add \
bash \
curl \
wget \
ca-certificates \
libstdc++ \
glib \
&& wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://raw.githubusercontent.com/sgerrand/alpine-pkg-node-bower/master/sgerrand.rsa.pub \
&& curl -L "https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.23-r3/glibc-2.23-r3.apk" -o glibc.apk \
&& apk add glibc.apk \
&& curl -L "https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.23-r3/glibc-bin-2.23-r3.apk" -o glibc-bin.apk \
&& apk add glibc-bin.apk \
&& curl -L "https://github.com/andyshinn/alpine-pkg-glibc/releases/download/2.25-r0/glibc-i18n-2.25-r0.apk" -o glibc-i18n.apk \
&& apk add --allow-untrusted glibc-i18n.apk \
&& /usr/glibc-compat/bin/localedef -i en_US -f UTF-8 en_US.UTF-8 \
&& /usr/glibc-compat/sbin/ldconfig /lib /usr/glibc/usr/lib \
&& rm -rf glibc*apk /var/cache/apk/*

安装miniconda

分步执行

cd /
cd tmp/ # 切换到tmp目录
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh # 下载安装文件
bash Miniconda3-latest-Linux-x86_64.sh # 安装miniconda

安装完成后 分步执行

export PATH="/root/miniconda3/bin:$PATH" 
source ~/.bashrc

conda -V # 查看是否安装成功

conda install pandas # 使用conda安装pandas

如何使用(可能不对,但是我成功了)

建立一个shell,如 test.sh ,写入文本

#!/bin/bash
export PATH="/root/miniconda3/bin:$PATH" 
source ~/.bashrc
python3 main_task.py # 要执行的脚本

搞了1.5天,终于搞定了,青龙面板符合我的需求,但是教程太少了

centralpro avatar Feb 17 '22 12:02 centralpro

我这边也安装成功了,具体过程很曲折的,先安装的numpy,在安装的pandas库,具体怎么成功的不太清楚

sdcxzx avatar Feb 17 '22 13:02 sdcxzx

hhh,安装后跑脚本发现还有时区的问题,刚刚解决,可太难了

centralpro avatar Feb 17 '22 13:02 centralpro

分享一下我的办法

  1. 添加linux依赖gcc gfortran build-base freetype-dev libpng-dev openblas-dev lapack-dev python3-dev
  2. 添加python依赖numpy
  3. 添加python依赖pandas

fairylyy avatar Jul 22 '22 14:07 fairylyy