Chapter 1. Go Toolset
1.1. About Go Toolset Copy linkLink copied to clipboard!
Go Toolset is a Red Hat offering for developers on the Red Hat Enterprise Linux platform, available as a Technology Preview. It provides the Go programming language tools and libraries. Go is alternatively known as golang.
Go Toolset is distributed as a part of Red Hat Developer Tools for Red Hat Enterprise Linux 7.
Go Toolset is available as a Technology Preview. See the Technology Preview Features Support Scope for more details.
Libraries in Go Toolset provide no ABI compatibility with past or future releases.
Customers deploying Go Toolset are encouraged to provide feedback to Red Hat.
The following components are available as a part of Go Toolset:
| Name | Version | Description |
|---|---|---|
| golang | 1.10.2 | A Go compiler. |
1.2. Compatibility Copy linkLink copied to clipboard!
Go Toolset is available for Red Hat Enterprise Linux versions 7.3 and 7.4 on the following architectures:
- The 64-bit Intel and AMD architectures
- The 64-bit ARM architecture
- The IBM Power Systems architecture
- The little-endian variant of IBM Power Systems architecture
- The IBM Z Systems architecture
1.3. Getting Access to Go Toolset Copy linkLink copied to clipboard!
Go Toolset is an offering that is distributed as a part of the Red Hat Developer Tools content set, which is available to customers with deployments of Red Hat Enterprise Linux 7. In order to install Go Toolset, enable the Red Hat Developer Tools and Red Hat Software Collections repositories by using the Red Hat Subscription Management and add the Red Hat Developer Tools key to your system.
Enable the
rhel-7-variant-devtools-rpmsrepository:subscription-manager repos --enable rhel-7-variant-devtools-rpms
# subscription-manager repos --enable rhel-7-variant-devtools-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow Replace variant with the Red Hat Enterprise Linux system variant (
serverorworkstation).NoteWe recommend developers to use Red Hat Enterprise Linux Server for access to the widest range of development tools.
Enable the
rhel-variant-rhscl-7-rpmsrepository:subscription-manager repos --enable rhel-variant-rhscl-7-rpms
# subscription-manager repos --enable rhel-variant-rhscl-7-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow Replace variant with the Red Hat Enterprise Linux system variant (
serverorworkstation).Add the Red Hat Developer Tools key to your system:
cd /etc/pki/rpm-gpg wget -O RPM-GPG-KEY-redhat-devel https://www.redhat.com/security/data/a5787476.txt rpm --import RPM-GPG-KEY-redhat-devel
# cd /etc/pki/rpm-gpg # wget -O RPM-GPG-KEY-redhat-devel https://www.redhat.com/security/data/a5787476.txt # rpm --import RPM-GPG-KEY-redhat-develCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Once the subscription is attached to the system, and repositories enabled you can install Red Hat Go Toolset as described in Section 1.4, “Installing Go Toolset”.
Additional Resources
- For more information on how to register your system using Red Hat Subscription Management and associate it with subscriptions, see the Red Hat Subscription Management collection of guides.
- For detailed instructions on subscription to Red Hat Software Collections, see Red Hat Developer Toolset User Guide, Section Getting Access to Red Hat Developer Toolset.
1.4. Installing Go Toolset Copy linkLink copied to clipboard!
Go Toolset is distributed as a collection of RPM packages that can be installed, updated, uninstalled, and inspected by using the standard package management tools that are included in Red Hat Enterprise Linux. Note that a valid subscription that provides access to the Red Hat Developer Tools content set is required in order to install Go Toolset on your system. For detailed instructions on how to associate your system with an appropriate subscription and get access to Go Toolset, see Section 1.3, “Getting Access to Go Toolset”.
Before installing Go Toolset, install all available Red Hat Enterprise Linux updates.
To install all components that are included in Go Toolset, install the go-toolset-7 package:
yum install go-toolset-7
# yum install go-toolset-7Copy to Clipboard Copied! Toggle word wrap Toggle overflow This installs all development and debugging tools, and other dependent packages to the system.
Create the Go language workspace directory and environment variable:
mkdir -p workspace_dir echo 'export GOPATH=workspace_dir' >> $HOME/.bashrc source $HOME/.bashrc
$ mkdir -p workspace_dir $ echo 'export GOPATH=workspace_dir' >> $HOME/.bashrc $ source $HOME/.bashrcCopy to Clipboard Copied! Toggle word wrap Toggle overflow Select an appropriate value for the workspace_dir directory. A common choice is
$HOME/go.If the
GOPATHvariable is not set, the go compiler uses the~/godirectory.
Additional Resources
- Workspaces — Description of the Go language workspace organization. Official documentation for the Go programming language.
1.5. Additional Resources Copy linkLink copied to clipboard!
A detailed description of the Go Toolset and all its features is beyond the scope of this book. For more information, see the resources listed below.
Online Documentation
- The Go programming language Documentation — Official documentation for the Go programming language, tools, and libraries.