데비안에 최신 버전의 go를 설치했는데 다른 프로그램에서 이를 찾을 수 없습니다.

데비안에 최신 버전의 go를 설치했는데 다른 프로그램에서 이를 찾을 수 없습니다.

내 데비안 운영 체제에 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

작동해야합니다 ...이 주제에 대한 다른 답변 보기.

관련 정보