duckdb / extension-template

Template for DuckDB extensions to help you develop, test and deploy a custom extension

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.