I'm trying to use golang plugin and always get runtime error when calling plugin.Open
.
plugin.Open: plugin was built with a different version of package
I'm sure the plugin was build with same code. Now I'm totally confused by the error message.
How does these verify mechanism work ?
src/runtime/plugin.go
:
for _, pkghash := range md.pkghashes {
if pkghash.linktimehash != *pkghash.runtimehash {
md.bad = true
return "", nil, "plugin was built with a different version of package " + pkghash.modulename
}
}