Skip to content

macOS arm64 linker errors #943

@jawj

Description

@jawj

What happens?

To avoid OpenSSL-related linker errors on an arm64 MacBook, I have to add -lcrypto to PG_DUCKDB_LINK_FLAGS in the Makefile.

To Reproduce

brew install postgresql@17 cmake ninja pkg-config lz4
export PATH="/opt/homebrew/opt/postgresql@17/bin:$PATH"
export PG_CONFIG="/opt/homebrew/opt/postgresql@17/bin/pg_config"

git clone https://github.com/duckdb/pg_duckdb
cd pg_duckdb

# this is the crucial edit: the build fails without it
sed -i.old 's/^PG_DUCKDB_LINK_FLAGS += .*/& -lcrypto/' Makefile

make -j$(sysctl -n hw.ncpu)
make install

echo "shared_preload_libraries = 'pg_duckdb'" >> /opt/homebrew/var/postgresql@17/postgresql.conf
pg_ctl -D /opt/homebrew/var/postgresql@17 start

createdb mytestdb
echo "CREATE EXTENSION pg_duckdb;" | psql -d mytestdb

OS:

macOS 15.7.1, arm64 (M3 Pro)

pg_duckdb Version (if built from source use commit hash):

Both v1.0.0 and main

Postgres Version (if built from source use commit hash):

17 (homebrew)

Hardware:

No response

Full Name:

George MacKerron

Affiliation:

Neon

What is the latest build you tested with? If possible, we recommend testing with the latest nightly build.

I have tested with a stable release

Did you include all relevant data sets for reproducing the issue?

Not applicable - the reproduction does not require a data set

Did you include all code required to reproduce the issue?

  • Yes, I have

Did you include all relevant configuration (e.g., CPU architecture, Linux distribution) to reproduce the issue?

  • Yes, I have

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