как установить пакет golang в полную папку и запустить его?

Посмотрите на ptpython. Это не в репозиториях, но вы можете легко установить его через pip3.

0
задан 26 February 2018 в 15:31

3 ответа

Плохой метод

Плохая идея. Я сделал извлечение, как вы писали, и я сломал ссылки и не могу запустить go:

$ cd /tmp/
$ apt-get download golang-go
$ dpkg -x golang-go_2%3a1.6-1ubuntu4_amd64.deb go
$ tree go -f | grep bin
    ├── go/usr/bin
    │   ├── go/usr/bin/go -> ../lib/go-1.6/bin/go
    │   └── go/usr/bin/gofmt -> ../lib/go-1.6/bin/gofmt
$ ./go/usr/bin/go
bash: ./go/usr/bin/go: No such file or directory

Вы можете попробовать другой более крупный пакет -

$ apt-get download golang-1.6-go
$ dpkg -x golang-1.6-go_1.6.2-0ubuntu5~16.04.4_amd64.deb go
$ tree go -f | grep bin    ├── go/usr/bin
    │   ├── go/usr/bin/go -> ../lib/go-1.6/bin/go
    │   └── go/usr/bin/gofmt -> ../lib/go-1.6/bin/gofmt
    │       ├── go/usr/lib/go-1.6/bin
    │       │   ├── go/usr/lib/go-1.6/bin/go
    │       │   └── go/usr/lib/go-1.6/bin/gofmt
    │       │   │   │   ├── go/usr/lib/go-1.6/pkg/linux_amd64/encoding/binary.a
$ go/usr/bin/go version
go version go1.6.2 linux/amd64

Лучше , но что, если go не найдет некоторые библиотеки?

Действительно, для работы golang установки вам нужно больше пакетов - см. моделирование ниже:

$ apt-get install golang --simulate
NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  golang-1.6 golang-1.6-doc golang-1.6-go golang-1.6-race-detector-runtime golang-1.6-src golang-doc golang-go golang-race-detector-runtime
  golang-src
Suggested packages:
  bzr git mercurial subversion
The following NEW packages will be installed:
  golang golang-1.6 golang-1.6-doc golang-1.6-go golang-1.6-race-detector-runtime golang-1.6-src golang-doc golang-go golang-race-detector-runtime
  golang-src
0 upgraded, 10 newly installed, 0 to remove and 12 not upgraded.

Хорошие методы

На самом деле у вас есть следующие возможности:

Создайте файл debootstrap или schroot или Docker / каталог или что-то похожее, чтобы изолировать среду Go. Установите go с помощью Snap:
snap install go16-lbo
и проверьте его с помощью
snap run go16-lbo help
Установите go1.10 с помощью ubuntu-make:
sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make
sudo apt-get update
sudo apt-get install ubuntu-make
umake go
1
ответ дан 22 May 2018 в 12:54

Плохой метод

Плохая идея. Я сделал извлечение, как вы писали, и я сломал ссылки и не могу запустить go:

$ cd /tmp/ $ apt-get download golang-go $ dpkg -x golang-go_2%3a1.6-1ubuntu4_amd64.deb go $ tree go -f | grep bin ├── go/usr/bin │   ├── go/usr/bin/go -> ../lib/go-1.6/bin/go │   └── go/usr/bin/gofmt -> ../lib/go-1.6/bin/gofmt $ ./go/usr/bin/go bash: ./go/usr/bin/go: No such file or directory

Вы можете попробовать другой более крупный пакет -

$ apt-get download golang-1.6-go $ dpkg -x golang-1.6-go_1.6.2-0ubuntu5~16.04.4_amd64.deb go $ tree go -f | grep bin ├── go/usr/bin │   ├── go/usr/bin/go -> ../lib/go-1.6/bin/go │   └── go/usr/bin/gofmt -> ../lib/go-1.6/bin/gofmt │   ├── go/usr/lib/go-1.6/bin │   │   ├── go/usr/lib/go-1.6/bin/go │   │   └── go/usr/lib/go-1.6/bin/gofmt │   │   │   │   ├── go/usr/lib/go-1.6/pkg/linux_amd64/encoding/binary.a $ go/usr/bin/go version go version go1.6.2 linux/amd64

Лучше , но что, если go не найдет некоторые библиотеки?

Действительно, для работы golang установки вам нужно больше пакетов - см. моделирование ниже:

$ apt-get install golang --simulate NOTE: This is only a simulation! apt-get needs root privileges for real execution. Keep also in mind that locking is deactivated, so don't depend on the relevance to the real current situation! Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: golang-1.6 golang-1.6-doc golang-1.6-go golang-1.6-race-detector-runtime golang-1.6-src golang-doc golang-go golang-race-detector-runtime golang-src Suggested packages: bzr git mercurial subversion The following NEW packages will be installed: golang golang-1.6 golang-1.6-doc golang-1.6-go golang-1.6-race-detector-runtime golang-1.6-src golang-doc golang-go golang-race-detector-runtime golang-src 0 upgraded, 10 newly installed, 0 to remove and 12 not upgraded.

Хорошие методы

На самом деле у вас есть следующие возможности:

Создайте файл debootstrap или schroot или Docker / каталог или что-то похожее, чтобы изолировать среду Go. Установите go с помощью Snap: snap install go16-lbo и проверьте его с помощью snap run go16-lbo help Установите go1.10 с помощью ubuntu-make: sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make sudo apt-get update sudo apt-get install ubuntu-make umake go
1
ответ дан 17 July 2018 в 20:01

Плохой метод

Плохая идея. Я сделал извлечение, как вы писали, и я сломал ссылки и не могу запустить go:

$ cd /tmp/ $ apt-get download golang-go $ dpkg -x golang-go_2%3a1.6-1ubuntu4_amd64.deb go $ tree go -f | grep bin ├── go/usr/bin │   ├── go/usr/bin/go -> ../lib/go-1.6/bin/go │   └── go/usr/bin/gofmt -> ../lib/go-1.6/bin/gofmt $ ./go/usr/bin/go bash: ./go/usr/bin/go: No such file or directory

Вы можете попробовать другой более крупный пакет -

$ apt-get download golang-1.6-go $ dpkg -x golang-1.6-go_1.6.2-0ubuntu5~16.04.4_amd64.deb go $ tree go -f | grep bin ├── go/usr/bin │   ├── go/usr/bin/go -> ../lib/go-1.6/bin/go │   └── go/usr/bin/gofmt -> ../lib/go-1.6/bin/gofmt │   ├── go/usr/lib/go-1.6/bin │   │   ├── go/usr/lib/go-1.6/bin/go │   │   └── go/usr/lib/go-1.6/bin/gofmt │   │   │   │   ├── go/usr/lib/go-1.6/pkg/linux_amd64/encoding/binary.a $ go/usr/bin/go version go version go1.6.2 linux/amd64

Лучше , но что, если go не найдет некоторые библиотеки?

Действительно, для работы golang установки вам нужно больше пакетов - см. моделирование ниже:

$ apt-get install golang --simulate NOTE: This is only a simulation! apt-get needs root privileges for real execution. Keep also in mind that locking is deactivated, so don't depend on the relevance to the real current situation! Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: golang-1.6 golang-1.6-doc golang-1.6-go golang-1.6-race-detector-runtime golang-1.6-src golang-doc golang-go golang-race-detector-runtime golang-src Suggested packages: bzr git mercurial subversion The following NEW packages will be installed: golang golang-1.6 golang-1.6-doc golang-1.6-go golang-1.6-race-detector-runtime golang-1.6-src golang-doc golang-go golang-race-detector-runtime golang-src 0 upgraded, 10 newly installed, 0 to remove and 12 not upgraded.

Хорошие методы

На самом деле у вас есть следующие возможности:

Создайте файл debootstrap или schroot или Docker / каталог или что-то похожее, чтобы изолировать среду Go. Установите go с помощью Snap: snap install go16-lbo и проверьте его с помощью snap run go16-lbo help Установите go1.10 с помощью ubuntu-make: sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make sudo apt-get update sudo apt-get install ubuntu-make umake go
1
ответ дан 23 July 2018 в 20:45

Другие вопросы по тегам:

Похожие вопросы: