Numpy를 로컬로 설치하기

Numpy를 로컬로 설치하기

이 질문을 게시했습니다.원래 StackOverflow에 있었습니다., 그런데 한 사용자가 여기로 옮겼다고 제안했습니다. 그래서 여기로 갑니다!

루트 권한이 없는 원격 컴퓨터에 계정이 있고 로컬 버전의 Python(원격 컴퓨터에 내가 가지고 있는 일부 코드와 호환되지 않는 Python 버전이 있음), Numpy 및 Scipy를 설치해야 했습니다. 어제부터 로컬에서 numpy를 설치하려고 시도했지만 성공하지 못했습니다.

/home/myusername/.local/에 로컬 버전의 Python(2.7.3)을 성공적으로 설치했으므로 /home/myusername/.local/bin/python. Numpy를 설치하는 두 가지 방법을 시도했습니다.

  1. 공식 웹페이지에서 Numpy의 최신 안정 버전을 다운로드하고 압축을 푼 다음 압축을 푼 폴더에 들어가서 다음을 수행했습니다 /home/myusername/.local/bin/python setup.py install --prefix=/home/myusername/.local. 그러나 다음과 같은 오류가 발생하고 그 뒤에 일련의 다른 오류가 발생합니다(이 오류에서 파생됨).

    gcc -pthread -shared build/temp.linux-x86_64-2.7/numpy/core/blasdot/_dotblas.o
    -L/usr/local/lib -Lbuild/temp.linux-x86_64-2.7 -lptf77blas -lptcblas -latlas 
    -o build/lib.linux-x86_64-2.7/numpy/core/_dotblas.so
    /usr/bin/ld: /usr/local/lib/libptcblas.a(cblas_dptgemm.o): relocation 
    R_X86_64_32 against `a local symbol' can not be used when making a shared 
    object; recompile with -fPIC
    

    이것이 무엇을 의미하는지 잘 모르고(오류가 분명히 LAPACK 라이브러리와 관련이 있다는 점을 제외하고) 위와 동일한 명령을 수행했지만 이제는 오류에서 제안한 대로 LDFLAGS='-fPIC'을 입력했습니다. 즉, I did LDFLAGS="-fPIC" /home/myusername/.local/bin/python setup.py install --prefix=/home/myusername/.local. 그러나 동일한 오류가 발생했습니다(위의 gcc 명령 뒤에 접두사 -fPIC가 추가되었다는 점만 제외).

  2. pip를 사용하여 설치를 시도했습니다. 즉, /home/myusername/.local/bin/pip install numpy로컬 경로에 pip를 성공적으로 설치한 후 /를 수행했습니다. 그러나 똑같은 오류가 발생합니다.

웹에서 검색해 봤지만, 나와 비슷한 오류는 하나도 없는 것 같았습니다. 내 첫 번째 추측은 이것이 실행되기 위해 루트 권한이 필요한 일부 코드와 관련이 있거나 LAPACK 라이브러리 버전 또는 gcc(gcc 버전 4.1.2가 원격 컴퓨터에 설치됨)와 관련된 문제일 수 있다는 것입니다. .

도와줄 사람?

답변1

아니요, numpy를 컴파일할 때 루트 권한이 필요하지 않습니다. 나는 얼마 전에 루트가 전혀 없이 내 컴퓨터에서 이와 똑같은 작업을 수행했습니다. 나는 명령이 필요하다고 생각하지 않습니다 --prefix. --user대신 옵션 을 사용해 보세요 setup.py install --user. 이 옵션은 수행하려는 작업을 자동으로 수행합니다.

이것이 도움이 되지 않으면 gcc 및 LAPACK 버전을 확인하겠습니다. 아마도 이를 업데이트할 수 없다면 이전 버전의 numpy를 사용해 볼 수도 있습니다.

관련 정보