Help: explain portability of an extension
NickCrews opened this issue · comments
Hey there! I am working on https://github.com/NickCrews/libpostal-duckdb
I have a question for distributing in regards to how portable an extension file is. If I build an extension for
- x86
- macOS
- duckdb 0.9.2
Is that going to work on Windows x86 machine using duckdb 0.9.2? Or do I need to publish a built version for every combo of (arch, OS, duckdb version)?
The reason I ask is because I am trying to incorporate libpostal as a dependency. It isn't on vcpkg. So I started with git submodules. But then I found an unofficial homebrew recipe that would be much easier, but it would limit the built to working on linux and macos. So if I need to build on windows, that is a nonstarter.
I figured that once we have this figured out I can submit a PR that clarifies this in the README, as a C NOOB this would have helped me. Thank you!
Hi @NickCrews that would not work. Check out https://github.com/duckdb/extension-template/blob/main/.github/workflows/MainDistributionPipeline.yml on how we distribute binaries for the different platforms.