-
Notifications
You must be signed in to change notification settings - Fork 17.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cmd/link: ABI hash for package in shared library should not include file path of dependency #30531
Comments
I think this is related to #16860 , perhaps even a duplicate of the issue. It looks like there are plans in place for Go 1.13 to run
That's how we are solving this issue in the meantime while we wait for Go 1.13 to provide a fix. You can see that it works in this example:
|
Thanks very much for the workaround:) I took a look at the issue you mentioned, it was talking about build path being included in the linking stage while I was talking about in the compiling stage. Never mind, I think the "reproducible" build mode would solve both:) |
This interferes with plugin loading. See: - golang/go#31278 - golang/go#30531 - golang/go#28983 Signed-off-by: Marcelo E. Magallon <marcelo@sylabs.io>
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
go build [-buildmode=plugin]
and test the compatibility between them.go mod vendor && go build -mod=vendor [-buildmode=plugin]
and test the compatibility between them.What did you expect to see?
In both cases the program runs successfully.
What did you see instead?
The package built by
go mod vendor
is rejected due to different ABI hashes of the common dependency. I dug into this and found that the difference in the ABI hash was caused by that the path to the package on the filesystem was recorded and hashed, asgo mod vendor
vendors the common depencency into different directories, the final ABI hash is different.The text was updated successfully, but these errors were encountered: