1 // Copyright 2017 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 package main 6 7 import "plugin" 8 9 func main() { 10 p, err := plugin.Open("plugin.so") 11 if err != nil { 12 panic(err) 13 } 14 15 sym, err := p.Lookup("Foo") 16 if err != nil { 17 panic(err) 18 } 19 f := sym.(func() int) 20 if f() != 42 { 21 panic("expected f() == 42") 22 } 23 } 24