Skip to content

fix(build): resolve GNU DuckDB linking for 0.1.3 - #8

Merged
debba merged 1 commit into
mainfrom
fix/duckdb-gnu-static-linking
Oct 25, 2026
Merged

debba merged 1 commit into
mainfrom
fix/duckdb-gnu-static-linking

Conversation

@debba

@debba debba commented Oct 25, 2026 •

Copy link
Copy Markdown
Collaborator

Hacker News v0.1.2 could not be published because its Linux ARM64 release build failed with an undefined reference to duckdb_register_static_extensions. The other four platform builds passed. GNU ld scans the DuckDB implementation archive before the static extension registrar introduces its reference.

Force that symbol to be unresolved up front on Linux GNU targets so the linker extracts its implementation. CI now builds the real plugin with GNU ld (-fuse-ld=bfd) to cover archive ordering. Prepare v0.1.3, which includes the security updates from #7 and this build fix; v0.1.2 remains an unpublished failed release attempt.

Validation:

  • Reproduced the static-archive ordering failure with GNU ld on ARM64 and verified that the explicit undefined symbol fixes it.
  • Checked build-script output for Linux GNU, Linux musl, macOS and Windows; retained the existing Windows library.
  • cargo test --locked --all-targets, the local optimized release build and JSON-RPC smoke, rustfmt --check build.rs, and actionlint passed.
  • cargo audit: zero vulnerabilities and zero warnings, without ignores.
  • GitNexus impact/detect-changes: one build-script symbol, no affected application processes, low change risk.
  • CI 40203686032: the real GNU ld build, Cargo tests, and security audit passed. The five-platform v0.1.3 release build is in progress.

References: failed Linux ARM64 release job, GNU ld archive search and --undefined documentation.

@kilo-code-bot

kilo-code-bot Bot commented Oct 25, 2026

Copy link
Copy Markdown

Kilo Code Review could not run — your account is out of credits.

Add credits or switch to a free model to enable reviews on this change.

@debba
debba merged commit bcaa36b into main Oct 25, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant