package main import ( "fmt" "github.com/ebitengine/purego" ) func main() { libPath := "target/debug/librust_ffi_from_go.dylib" arcjetlib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL) if err != nil { // Handle error panic("load dylib error") } defer purego.Dlclose(arcjetlib) // Register the function var launch func(string) string purego.RegisterLibFunc(&launch, arcjetlib, "arcjet_launch") result := launch("hatter") fmt.Println("result: ", result) }