github.com/fenixara/go@v0.0.0-20170127160404-96ea0918e670/doc/install.html (about)

     1  <!--{
     2  	"Title": "Getting Started",
     3  	"Path":  "/doc/install"
     4  }-->
     5  
     6  <div class="hideFromDownload">
     7  
     8  <h2 id="download">Download the Go distribution</h2>
     9  
    10  <p>
    11  <a href="https://golang.org/dl/" id="start" class="download">
    12  <span class="big">Download Go</span>
    13  <span class="desc">Click here to visit the downloads page</span>
    14  </a>
    15  </p>
    16  
    17  <p>
    18  <a href="https://golang.org/dl/" target="_blank">Official binary
    19  distributions</a> are available for the FreeBSD (release 8-STABLE and above),
    20  Linux, Mac OS X (10.8 and above), and Windows operating systems and
    21  the 32-bit (<code>386</code>) and 64-bit (<code>amd64</code>) x86 processor
    22  architectures.
    23  </p>
    24  
    25  <p>
    26  If a binary distribution is not available for your combination of operating
    27  system and architecture, try
    28  <a href="/doc/install/source">installing from source</a> or
    29  <a href="/doc/install/gccgo">installing gccgo instead of gc</a>.
    30  </p>
    31  
    32  
    33  <h2 id="requirements">System requirements</h2>
    34  
    35  <p>
    36  Go binary distributions are available for these supported operating systems and architectures.
    37  Please ensure your system meets these requirements before proceeding.
    38  If your OS or architecture is not on the list, you may be able to
    39  <a href="/doc/install/source">install from source</a> or
    40  <a href="/doc/install/gccgo">use gccgo instead</a>.
    41  </p>
    42  
    43  <table class="codetable" frame="border" summary="requirements">
    44  <tr>
    45  <th align="center">Operating system</th>
    46  <th align="center">Architectures</th>
    47  <th align="center">Notes</th>
    48  </tr>
    49  <tr><td colspan="3"><hr></td></tr>
    50  <tr><td>FreeBSD 8-STABLE or later</td> <td>amd64, 386</td> <td>Debian GNU/kFreeBSD not supported</td></tr>
    51  <tr><td>Linux 2.6.23 or later with glibc</td> <td>amd64, 386, arm, s390x, ppc64le</td> <td>CentOS/RHEL 5.x not supported</td></tr>
    52  <tr><td>Mac OS X 10.8 or later</td> <td>amd64</td> <td>use the clang or gcc<sup>&#8224;</sup> that comes with Xcode<sup>&#8225;</sup> for <code>cgo</code> support</td></tr>
    53  <tr><td>Windows XP or later</td> <td>amd64, 386</td> <td>use MinGW gcc<sup>&#8224;</sup>. No need for cygwin or msys.</td></tr>
    54  </table>
    55  
    56  <p>
    57  <sup>&#8224;</sup>A C compiler is required only if you plan to use
    58  <a href="/cmd/cgo">cgo</a>.<br/>
    59  <sup>&#8225;</sup>You only need to install the command line tools for
    60  <a href="http://developer.apple.com/Xcode/">Xcode</a>. If you have already
    61  installed Xcode 4.3+, you can install it from the Components tab of the
    62  Downloads preferences panel.
    63  </p>
    64  
    65  </div><!-- hideFromDownload -->
    66  
    67  
    68  <h2 id="install">Install the Go tools</h2>
    69  
    70  <p>
    71  If you are upgrading from an older version of Go you must
    72  first <a href="#uninstall">remove the existing version</a>.
    73  </p>
    74  
    75  <div id="tarballInstructions">
    76  
    77  <h3 id="tarball">Linux, Mac OS X, and FreeBSD tarballs</h3>
    78  
    79  <p>
    80  <a href="https://golang.org/dl/">Download the archive</a>
    81  and extract it into <code>/usr/local</code>, creating a Go tree in
    82  <code>/usr/local/go</code>. For example:
    83  </p>
    84  
    85  <pre>
    86  tar -C /usr/local -xzf <span class="downloadFilename">go$VERSION.$OS-$ARCH.tar.gz</span>
    87  </pre>
    88  
    89  <p class="hideFromDownload">
    90  Choose the archive file appropriate for your installation.
    91  For instance, if you are installing Go version 1.2.1 for 64-bit x86 on Linux,
    92  the archive you want is called <code>go1.2.1.linux-amd64.tar.gz</code>.
    93  </p>
    94  
    95  <p>
    96  (Typically these commands must be run as root or through <code>sudo</code>.)
    97  </p>
    98  
    99  <p>
   100  Add <code>/usr/local/go/bin</code> to the <code>PATH</code> environment
   101  variable. You can do this by adding this line to your <code>/etc/profile</code>
   102  (for a system-wide installation) or <code>$HOME/.profile</code>:
   103  </p>
   104  
   105  <pre>
   106  export PATH=$PATH:/usr/local/go/bin
   107  </pre>
   108  
   109  <h4 id="tarball_non_standard">Installing to a custom location</h4>
   110  
   111  <p>
   112  The Go binary distributions assume they will be installed in
   113  <code>/usr/local/go</code> (or <code>c:\Go</code> under Windows),
   114  but it is possible to install the Go tools to a different location.
   115  In this case you must set the <code>GOROOT</code> environment variable
   116  to point to the directory in which it was installed.
   117  </p>
   118  
   119  <p>
   120  For example, if you installed Go to your home directory you should add
   121  commands like the following to <code>$HOME/.profile</code>:
   122  </p>
   123  
   124  <pre>
   125  export GOROOT=$HOME/go1.X
   126  export PATH=$PATH:$GOROOT/bin
   127  </pre>
   128  
   129  <p>
   130  <b>Note</b>: <code>GOROOT</code> must be set only when installing to a custom
   131  location.
   132  </p>
   133  
   134  </div><!-- tarballInstructions -->
   135  
   136  <div id="darwinPackageInstructions">
   137  
   138  <h3 id="osx">Mac OS X package installer</h3>
   139  
   140  <p>
   141  <a href="https://golang.org/dl/">Download the package file</a>,
   142  open it, and follow the prompts to install the Go tools.
   143  The package installs the Go distribution to <code>/usr/local/go</code>.
   144  </p>
   145  
   146  <p>
   147  The package should put the <code>/usr/local/go/bin</code> directory in your
   148  <code>PATH</code> environment variable. You may need to restart any open
   149  Terminal sessions for the change to take effect.
   150  </p>
   151  
   152  </div><!-- darwinPackageInstructions -->
   153  
   154  <div id="windowsInstructions">
   155  
   156  <h3 id="windows">Windows</h3>
   157  
   158  <p class="hideFromDownload">
   159  The Go project provides two installation options for Windows users
   160  (besides <a href="/doc/install/source">installing from source</a>):
   161  a zip archive that requires you to set some environment variables and an
   162  MSI installer that configures your installation automatically.
   163  </p>
   164  
   165  <div id="windowsInstallerInstructions">
   166  
   167  <h4 id="windows_msi">MSI installer</h4>
   168  
   169  <p>
   170  Open the <a href="https://golang.org/dl/">MSI file</a>
   171  and follow the prompts to install the Go tools.
   172  By default, the installer puts the Go distribution in <code>c:\Go</code>.
   173  </p>
   174  
   175  <p>
   176  The installer should put the <code>c:\Go\bin</code> directory in your
   177  <code>PATH</code> environment variable. You may need to restart any open
   178  command prompts for the change to take effect.
   179  </p>
   180  
   181  </div><!-- windowsInstallerInstructions -->
   182  
   183  <div id="windowsZipInstructions">
   184  
   185  <h4 id="windows_zip">Zip archive</h4>
   186  
   187  <p>
   188  <a href="https://golang.org/dl/">Download the zip file</a> and extract it into the directory of your choice (we suggest <code>c:\Go</code>).
   189  </p>
   190  
   191  <p>
   192  If you chose a directory other than <code>c:\Go</code>,
   193  you must set the <code>GOROOT</code> environment variable to your chosen path.
   194  </p>
   195  
   196  <p>
   197  Add the <code>bin</code> subdirectory of your Go root (for example, <code>c:\Go\bin</code>) to your <code>PATH</code> environment variable.
   198  </p>
   199  
   200  </div><!-- windowsZipInstructions -->
   201  
   202  <h4 id="windows_env">Setting environment variables under Windows</h4>
   203  
   204  <p>
   205  Under Windows, you may set environment variables through the "Environment
   206  Variables" button on the "Advanced" tab of the "System" control panel. Some
   207  versions of Windows provide this control panel through the "Advanced System
   208  Settings" option inside the "System" control panel.
   209  </p>
   210  
   211  </div><!-- windowsInstructions -->
   212  
   213  
   214  <h2 id="testing">Test your installation</h2>
   215  
   216  <p>
   217  Check that Go is installed correctly by setting up a workspace
   218  and building a simple program, as follows.
   219  </p>
   220  
   221  <p>
   222  Create your <a href="code.html#Workspaces">workspace</a> directory,
   223  <code class="testUnix">$HOME/go</code><code class="testWindows">%USERPROFILE%\go</code>.
   224  (If you'd like to use a different directory,
   225  you will need to set the <code>GOPATH</code> environment variable;
   226  see <a href="code.html#Workspaces">How to Write Go Code</a> for details.)
   227  </p>
   228  
   229  <p>
   230  Next, make the directory <code>src/hello</code> inside your workspace,
   231  and in that directory create a file named <code>hello.go</code> that looks like:
   232  </p>
   233  
   234  <pre>
   235  package main
   236  
   237  import "fmt"
   238  
   239  func main() {
   240      fmt.Printf("hello, world\n")
   241  }
   242  </pre>
   243  
   244  <p>
   245  Then build it with the <code>go</code> tool:
   246  </p>
   247  
   248  <pre class="testUnix">
   249  $ <b>cd $HOME/go/src/hello</b>
   250  $ <b>go build</b>
   251  </pre>
   252  
   253  <pre class="testWindows">
   254  C:\&gt; <b>cd %USERPROFILE%\go\src\hello</b>
   255  C:\Users\Gopher\go\src\hello&gt; <b>go build</b>
   256  </pre>
   257  
   258  <p>
   259  The command above will build an executable named
   260  <code class="testUnix">hello</code><code class="testWindows">hello.exe</code>
   261  in the directory alongside your source code.
   262  Execute it to see the greeting:
   263  </p>
   264  
   265  <pre class="testUnix">
   266  $ <b>./hello</b>
   267  hello, world
   268  </pre>
   269  
   270  <pre class="testWindows">
   271  C:\Users\Gopher\go\src\hello&gt; <b>hello</b>
   272  hello, world
   273  </pre>
   274  
   275  <p>
   276  If you see the "hello, world" message then your Go installation is working.
   277  </p>
   278  
   279  <p>
   280  You can run <code>go</code> <code>install</code> to install the binary into
   281  your workspace's <code>bin</code> directory
   282  or <code>go</code> <code>clean</code> to remove it.
   283  </p>
   284  
   285  <p>
   286  Before rushing off to write Go code please read the
   287  <a href="/doc/code.html">How to Write Go Code</a> document,
   288  which describes some essential concepts about using the Go tools.
   289  </p>
   290  
   291  
   292  <h2 id="uninstall">Uninstalling Go</h2>
   293  
   294  <p>
   295  To remove an existing Go installation from your system delete the
   296  <code>go</code> directory. This is usually <code>/usr/local/go</code>
   297  under Linux, Mac OS X, and FreeBSD or <code>c:\Go</code>
   298  under Windows.
   299  </p>
   300  
   301  <p>
   302  You should also remove the Go <code>bin</code> directory from your
   303  <code>PATH</code> environment variable.
   304  Under Linux and FreeBSD you should edit <code>/etc/profile</code> or
   305  <code>$HOME/.profile</code>.
   306  If you installed Go with the <a href="#osx">Mac OS X package</a> then you
   307  should remove the <code>/etc/paths.d/go</code> file.
   308  Windows users should read the section about <a href="#windows_env">setting
   309  environment variables under Windows</a>.
   310  </p>
   311  
   312  
   313  <h2 id="help">Getting help</h2>
   314  
   315  <p>
   316    For help, see the <a href="/help/">list of Go mailing lists, forums, and places to chat</a>.
   317  </p>
   318  
   319  <p>
   320    Report bugs either by running “<b><code>go</code> <code>bug</code></b>”, or
   321    manually at the <a href="https://golang.org/issue">Go issue tracker</a>.
   322  </p>