-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cannot find -lduckdb #44
Comments
Hi @mbforr perhaps you could provide the complete Dockerfile? that'd help maintainers to see what could be going on. Here's a Dockerfile that pulls from the postgis official image that worked for me, in case it's useful for you to take as a reference. Dockerfile# Specify the exact base image version for consistency
FROM postgis/postgis:16-3.4
# Copy requirements file
COPY requirements.txt /
# Install packages
RUN apt-get update && \
apt-get install -y --no-install-recommends \
python3-pip python3-psycopg2 python3-setuptools wget make cmake gcc \
libtool unzip pgxnclient libpq-dev postgresql-server-dev-${PG_MAJOR} \
lsb-release \
ca-certificates build-essential autoconf automake zlib1g-dev \
libxml2-dev postgresql-server-dev-all git \
libboost-atomic1.74.0 libboost-chrono1.74.0 libboost-graph1.74.0 \
libboost-date-time1.74.0 libboost-program-options1.74.0 libboost-system1.74.0 \
libboost-thread1.74.0 libboost-dev && \
apt-get install -y python3 postgresql-plpython3-${PG_MAJOR} && \
pip3 install --upgrade pip && \
pip3 install --no-deps -r requirements.txt
# Install additional extensions
RUN set -xe; \
apt-get update; \
apt-get install -y --no-install-recommends \
"postgresql-${PG_MAJOR}-pgaudit" \
"postgresql-${PG_MAJOR}-pg-failover-slots" \
"postgresql-${PG_MAJOR}-pgrouting" \
; \
rm -fr /tmp/* ; \
rm -rf /var/lib/apt/lists/*;
# Clone duckdb_fdw repository
RUN git clone https://github.com/alitrack/duckdb_fdw
# Adjust the path to pg_config as necessary
ENV PG_CONFIG=/usr/lib/postgresql/${PG_MAJOR}/bin/pg_config
# duckdb foreign data wrapper installation
RUN cd duckdb_fdw && \
wget -c https://github.com/duckdb/duckdb/releases/download/v0.10.1/libduckdb-linux-amd64.zip && \
unzip -o libduckdb-linux-amd64.zip && \
cp libduckdb.so $($PG_CONFIG --libdir) && \
make USE_PGXS=1 PG_CONFIG=$PG_CONFIG && \
make install USE_PGXS=1 PG_CONFIG=$PG_CONFIG
# Final Cleanup
RUN apt-get purge -y --auto-remove wget lsb-release && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# Change the uid of postgres to 26
RUN usermod -u 26 postgres
# Set user to postgres
USER 26 Requirements file
|
hey this ended up working great! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Great work! Trying to pull this into a docker container for PostGIS but hitting an issue. Here is the Docker code I am running:
Error that it's getting stuck on is - /usr/bin/ld: cannot find -lduckdb: No such file or directory
The text was updated successfully, but these errors were encountered: