- Go code linked into, and called from, a non-Go program
In the Go 1.5 release this mode is implemented, using a .a file, for most Unix systems.
- Go code as a shared library plugin with a C style API
In the Go 1.5 release this mode is implemented for linux-amd64, linux-arm, darwin-amd64, and darwin-arm. When using gccgo it is implemented for any supported target.
- Go code as a shared library plugin with a Go style API
This is not implemented in the Go 1.5 release.
- Go code that uses a shared library plugin
This is not implemented in the Go 1.5 release.
- Building Go packages as a shared library
In the Go 1.5 release this is implemented for the linux-amd64 target only. When using gccgo it is implemented for any supported target.
edited summary:
- Go code linked into, and called from, a non-Go program
In the Go 1.5 release this mode is implemented, using a .a file, for most Unix systems.
- Go code as a shared library plugin with a C style API
In the Go 1.5 release this mode is implemented for linux-amd64, linux-arm, darwin-amd64, and darwin-arm. When using gccgo it is implemented for any supported target.
- Go code as a shared library plugin with a Go style API
This is not implemented in the Go 1.5 release.
- Go code that uses a shared library plugin
This is not implemented in the Go 1.5 release.
- Building Go packages as a shared library
In the Go 1.5 release this is implemented for the linux-amd64 target only. When using gccgo it is implemented for any supported target.
- A Go program built as a PIE
This is not implemented in the Go 1.5 release.