-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
Plugins does not work with statically linked binaries #4702
Comments
A dynamic build would also have the effect that we could supply I'm not sure whether changing from a static(ish) build to a dynamic build will break things for users. The current build process produces this
Whereas a
The safe thing to do would be to make a separate cgo build for linux/amd64. We actually build this exact executable in the It is difficult to build cgo builds for any architectures we don't have build machines for so making anything other than the linux/amd64 build would be hard. This might involve using xgo... Thoughts? |
The current static build has no dependencies. It's perfect for example for alpine docker containers.
The dynamic cgo build does not work as above because its compiled against glibc. For example alpine does contain glibc, a manual installation is required.
So I suggest to provide a separate cgo build for linux/amd64. |
Since linux distros have different versions of glibc (or even musl instead of glibc), rclone will have to pick one (or two) popular distros to provide cgo build for, |
Or you use a very old version of glibc to build rclone, because it will run on all distributions with newer glibc versions? |
It will still need CI tests on supported distros. |
Here is another idea for cross building dynamic libraries: https://dev.to/kristoff/zig-makes-go-cross-compilation-just-work-29ho zig can act as a C toolchain and out of the box can cross compile for many platforms. |
Related to #5090 |
closing in favor of #5090 |
What is your current rclone version (output from
rclone version
)?What problem are you are trying to solve?
Plugins are not usable with the precompiled rclone release because its statically linked. Plugins requires a dynamically linked rclone release.
How do you think rclone should be changed to solve that?
Please provide an additionally dynamically linked release or provide a dynamically linked release instead of a statically linked one if this should have no negative effects.
Forum link: https://forum.rclone.org/t/plugin-not-implemented/19886/4
The text was updated successfully, but these errors were encountered: