내 데비안 운영 체제에 Universe(파이썬 모듈)를 설치하고 싶습니다. Universe에는 golang1.5 이상이 필요합니다. apt 저장소에 있는 것이 너무 오래되어서 공식 홈페이지에서 설치했습니다 /usr/bin
. command 를 사용하여 액세스할 수 있습니다 /usr/bin/go/bin
. 그런 다음 이를 PATH 에도 추가했습니다 export PATH=$PATH:/usr/bin/go/bin
. 이제 go to run go를 입력하면 됩니다.
$ go version
go version go1.7.4 linux/amd64
이제 Universe Python 모듈을 설치하고 싶습니다 sudo pip install universe
. 불행히도 이 모듈은 작동하지 않습니다.
이것이 제공하는 것입니다:
Failed building wheel for go-vncdriver
Running setup.py clean for go-vncdriver
Failed to build go-vncdriver
Installing collected packages: go-vncdriver, PyYAML, universe, requests
Running setup.py install for go-vncdriver ... error
Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-hND5Mt/go-vncdriver/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-Ob53Rd-record/install-record.txt --single-version-externally-managed --compile:
running install
running build
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-build-hND5Mt/go-vncdriver/setup.py", line 79, in <module>
setup_requires=['numpy'],
File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
dist.run_commands()
File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/usr/local/lib/python2.7/dist-packages/setuptools/command/install.py", line 61, in run
return orig.install.run(self)
File "/usr/lib/python2.7/distutils/command/install.py", line 601, in run
self.run_command('build')
File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/tmp/pip-build-hND5Mt/go-vncdriver/setup.py", line 24, in run
self.check_version()
File "/tmp/pip-build-hND5Mt/go-vncdriver/setup.py", line 43, in check_version
(DETAIL: original error: {}.)""".format(' '.join(cmd), e))
__main__.BuildError:
Unable to execute 'go help build'. HINT: are you sure `go` is installed?
go_vncdriver requires Go version 1.5 or newer. Here are some hints for Go installation:
- Ubuntu 14.04: The default golang is too old, but you can get a modern one via: "sudo add-apt-repository ppa:ubuntu-lxc/lxd-stable && sudo apt-get update && sudo apt-get install golang"
- Ubuntu 16:04: "sudo apt-get install golang"
- OSX, El Capitan or newer: "brew install golang"
- Other: you can obtain a recent Go build from https://golang.org/doc/install
(DETAIL: original error: [Errno 13] Permission denied.)
----------------------------------------
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-hND5Mt/go-vncdriver/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-Ob53Rd-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-hND5Mt/go-vncdriver/
답변1
서브셸에서 명령을 실행할 때 사용되는 환경 sudo
변수가 $PATH
반드시 동일할 필요는 없습니다. 고려하다:
echo $PATH
그리고
sudo sh #sub-shell as super user
echo $PATH
두 echo
명령이 동일하게 표시되지 않을 수 있습니다 $PATH
. 서브셸을 실행하기 전에 경로를 명시적으로 설정하거나 go
루트 사용자 경로에 바이너리를 추가할 수 있습니다.
옵션 1의 경우 다음과 같습니다.
sudo "PATH=$PATH" pip install universe
작동해야합니다 ...이 주제에 대한 다른 답변 보기.