Solaris에 Python 3용 PyCrypto를 설치하려고 합니다. " "를 전달하든 python3 setup.py install
" pip3 install pycrypto
"을 전달하든 동일한 문제가 발생합니다. 존재하지 않는 gcc가 호출됩니다.
python3 setup.py install
[...]
/opt/csw/bin/gcc-4.8 -pipe -m32 -march=pentiumpro -Wno-unused-result -fwrapv -Wall -Wstrict-prototypes -pipe -m32 -march=pentiumpro -I/usr/include/gmp -fPIC -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/usr/include/ -I/opt/csw/include/python3.3m -c src/_fastmath.c -o build/temp.solaris-2.11-i86pc.32bit-3.3/src/_fastmath.o
unable to execute /opt/csw/bin/gcc-4.8: No such file or directory
이제 나는 내가 사용하고 있는 기계의 역사에 대해 아무것도 모른다. /opt/csw/bin/gcc-4.8은 아마도 과거 어느 시점에 존재했을 것입니다. 그러나 더 이상 그렇지 않습니다. export CC=/usr/bin/gcc
(또는 다른 GCC)가 문제를 해결하지 못합니다--- /opt/csw/bin/gcc-4.8이 확실히 호출됩니다.
나는 PyCrypto 설치에 관심이 적고 PyCrypto를 이해하는 데 더 관심이 있습니다.왜이 가짜 전화는 처음부터 전송되었습니다. "/opt/csw/bin/gcc-4.8" 값은 어디에 저장되어 있나요? 시스템은 이 컴파일러를 호출하는 데 필요하다고 생각되는 정보를 어떻게/어디서 얻습니까?
내가 생각할 수 있는 유일한 것은 Python3이 원래 /opt/csw/bin/gcc-4.8로 컴파일되었고 Python3이 /opt/csw/bin/gcc-4.8이 물건을 컴파일하는 컴파일러였던 곳에 영구적으로 태웠다는 것입니다. 이 경우 잘못된 종속성을 제거하려면 Python3을 제거하고 다시 설치하는 것이 더 나을까요?
답변1
/opt/csw/bin/gcc-4.8
경로는 Oracle 배포판에 사전 설치된 OpenCSW를 나타냅니다(4.8이 제거되었거나 다른 버전이 있음).
다음 내에서 설정 CC
및 환경 변수를 사용해 보세요.CXX
setup.py
os.environ
os.environ["CC"] = "g++-4.7" os.environ["CXX"] = "g++-4.7"
(4.7은 내 버전이므로 g++
귀하의 버전으로 설정하십시오 /bin
).
답변2
/opt/csw/bin/gcc-4.8
cc
어쩌면 당신 이나 컴파일러 에 대한 소프트 링크를 만드시겠습니까 gcc
?