buildmode
go buildbuildmodego buildgo install
buildmode的值
buildmode参数主要作用用来让Go编译器构建出特定的对象文件,目前它支持以下特定值,每个值得含义如下。
package main
import "fmt"
type gethw string
func (g gethw) HelloWorld() {
fmt.Println("hello world")
}
var GetHelloWorld gethw
package main
import (
"fmt"
"os"
"plugin"
)
type GetHelloWorld interface {
HelloWorld()
}
func main() {
plug, err := plugin.Open("./test/helloworld.so")
if err != nil {
panic(err)
}
getplug, err := plug.Lookup("GetHelloWorld")
if err != nil {
panic(err)
}
var hw GetHelloWorld
hw, ok := getplug.(GetHelloWorld)
if !ok {
fmt.Println(err)
os.Exit(1)
}
hw.HelloWorld()
}