Skip to content

libsql_experimental.a linker warnings on macOS #85

@ThomasGormley

Description

@ThomasGormley

The pre-compiled libsql_experimental.a static library for darwin_arm64 was built targeting macOS 15.5, which causes issuies on systems where MACOSX_DEPLOYMENT_TARGET defaults to a lower version (in my case it's 15.0).

I had tried some steps for a smilar issue in Go's tracker from some years ago

  • Upgraded macOS to latest non-major version (15.7.3)
  • Reinstalled Xcode Command Line Tools
  • Cleared Go module cache (go clean -cache -modcache && go mod tidy)
  • Tested with both Homebrew-installed Go and official Go distribution

Is it reasonable to target a lower version when building libsql_experimental.a?

Thanks

Reproduction

  1. Install go-libsql in a Go project:

    go get github.com/tursodatabase/go-libsql
  2. Build any program that imports the package:

    go build ./...
  3. Observe linker warnings:

    ld: warning: object file (/Users/xxx/go/pkg/mod/github.com/tursodatabase/go-libsql@v0.0.0-20251219133454-43644db490ff/lib/darwin_arm64/libsql_experimental.a[24](fad98b632b8ce3cc-curve25519.o)) was built for newer 'macOS' version (15.5) than being linked (15.0)
    ld: warning: object file (...libsql_experimental.a[26](ca8bd8684bb569fa-montgomery.o)) was built for newer 'macOS' version (15.5) than being linked (15.0)
    ld: warning: object file (...libsql_experimental.a[149](sqlite3mc.c.o)) was built for newer 'macOS' version (15.5) than being linked (15.0)
    # ... (20+ similar warnings)
    

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions