Re: Build issue with postgresql 17 undefined reference to `pg_encoding_to_char' and `pg_char_to_encoding' - Mailing list pgsql-hackers

From Aleksander Alekseev
Subject Re: Build issue with postgresql 17 undefined reference to `pg_encoding_to_char' and `pg_char_to_encoding'
Date
Msg-id CAJ7c6TOGa9CJF0viHvLxcZ3R07ouLFZ1jyBYnnWb9veH8aw_vQ@mail.gmail.com
Whole thread Raw
In response to Re: Build issue with postgresql 17 undefined reference to `pg_encoding_to_char' and `pg_char_to_encoding'  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Build issue with postgresql 17 undefined reference to `pg_encoding_to_char' and `pg_char_to_encoding'
List pgsql-hackers
Mikael,

On Thu, Oct 10, 2024 at 8:49 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> Mikael Sand <msand@seaber.io> writes:
> > RUN clang++ -fno-common -static -o main main.cpp \
> >     -L/usr/local/lib -lpq -lpgcommon -lpgport \
> >     -lldap -lsasl2 -lssl -lcrypto -llber \
> >     -lgssapi_krb5 \
> >     -lkrb5 -lk5crypto -lcom_err -lkrb5support \
> >     -lgdbm
>
> The short answer here is that your link recipe is wrong, and has been
> wrong right along, though you accidentally got away with it before.
> The modules within libpq expect to be linked with libpgcommon_shlib
> and libpgport_shlib, not libpgcommon/libpgport.
>
> Having external code that needs to know explicitly about every one
> of a library's dependencies is one of many reasons why we discourage
> static linking.

May I ask what problem you are trying to solve with static linking in
the first place?

--
Best regards,
Aleksander Alekseev



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Build issue with postgresql 17 undefined reference to `pg_encoding_to_char' and `pg_char_to_encoding'
Next
From: Mikael Sand
Date:
Subject: Re: Annoying build warnings from latest Apple toolchain