diff options
Diffstat (limited to 'man/go-install.1')
-rw-r--r-- | man/go-install.1 | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/man/go-install.1 b/man/go-install.1 new file mode 100644 index 0000000..5b1d9d8 --- /dev/null +++ b/man/go-install.1 @@ -0,0 +1,73 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH GO-INSTALL 1 "2022-03-15" +.\" Please adjust this date whenever revising the manpage. +.SH NAME +go \- tool for managing Go source code +.SH SYNOPSIS +.B go install +.RI [ "build flags" ] +.RI [ packages ] +.SH DESCRIPTION +Install compiles and installs the packages named by the import paths. +.P +Executables are installed in the directory named by the GOBIN environment +variable, which defaults to $GOPATH/bin or $HOME/go/bin if the GOPATH +environment variable is not set. Executables in $GOROOT +are installed in $GOROOT/bin or $GOTOOLDIR instead of $GOBIN. +.P +If the arguments have version suffixes (like @latest or @v1.0.0), "go install" +builds packages in module-aware mode, ignoring the go.mod file in the current +directory or any parent directory, if there is one. This is useful for +installing executables without affecting the dependencies of the main module. +To eliminate ambiguity about which module versions are used in the build, the +arguments must satisfy the following constraints: +.IP \[bu] 2 +Arguments must be package paths or package patterns (with "..." wildcards). +They must not be standard packages (like fmt), meta-patterns (std, cmd, +all), or relative or absolute file paths. +.IP \[bu] +All arguments must have the same version suffix. Different queries are not +allowed, even if they refer to the same version. +.IP \[bu] +All arguments must refer to packages in the same module at the same version. +.IP \[bu] +Package path arguments must refer to main packages. Pattern arguments +will only match main packages. +.IP \[bu] +No module is considered the "main" module. If the module containing +packages named on the command line has a go.mod file, it must not contain +directives (replace and exclude) that would cause it to be interpreted +differently than if it were the main module. The module must not require +a higher version of itself. +.IP \[bu] +Vendor directories are not used in any module. (Vendor directories are not +included in the module zip files downloaded by \(oqgo install\(cq.) +.P +If the arguments don\(cqt have version suffixes, "go install" may run in +module-aware mode or GOPATH mode, depending on the GO111MODULE environment +variable and the presence of a go.mod file. See \(oqgo help modules\(cq for details. +If module-aware mode is enabled, "go install" runs in the context of the main +module. +.P +When module-aware mode is disabled, other packages are installed in the +directory $GOPATH/pkg/$GOOS_$GOARCH. When module-aware mode is enabled, +other packages are built and cached but not installed. +.P +The \-i flag installs the dependencies of the named packages as well. +.br +The \-i flag is deprecated. Compiled packages are cached automatically. +.P +For more about the build flags, see \fBgo-build\fP(1). +.br +For more about specifying packages, see \fBgo-packages\fP(7). +.SH SEE ALSO +.BR go-build (1), +.BR go-get (1), +.BR go-clean (1). +.SH AUTHOR +.PP +This manual page was written by Michael Stapelberg <stapelberg@debian.org> +and is maintained by the +Debian Go Compiler Team <team+go-compiler@tracker.debian.org> +based on the output of \(oqgo help install\(cq +for the Debian project (and may be used by others). |