Re: [HACKERS] building libpq.a static library

Поиск
Список
Период
Сортировка
От Craig Ringer
Тема Re: [HACKERS] building libpq.a static library
Дата
Msg-id CAMsr+YF5TLP=g483wku4Z--9TvwMdGXkVbUVA-8hiXgRxELQqw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [HACKERS] building libpq.a static library  (Jeroen Ooms <jeroen@berkeley.edu>)
Ответы Re: [HACKERS] building libpq.a static library  (Craig Ringer <craig@2ndquadrant.com>)
Re: [HACKERS] building libpq.a static library  (Jeroen Ooms <jeroen@berkeley.edu>)
Список pgsql-hackers
On 12 July 2017 at 23:46, Jeroen Ooms <jeroen@berkeley.edu> wrote:
On Wed, Jul 12, 2017 at 5:11 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Jeroen Ooms <jeroen@berkeley.edu> writes:
>> I maintain static libraries for libpq for the R programming language
>> (we need static linking to ship with the binary packages).
>
> How do you get that past vendor packaging policies?  When I worked at
> Red Hat, there was a very strong policy against allowing any package
> to statically embed parts of another one, because it creates serious
> management problems if e.g. the other one needs a security update.
> I'm sure Red Hat isn't the only distro that feels that way.

We only use this on Windows. On platforms with a decent package
manager we indeed link to a shared library.

You shouldn't ever need static libraries on Windows, though. Because it searches the CWD first on its linker search path, you can just drop libpq.dll in the same directory as your binary/library and link to the stub libpq.lib .

On Mac OS X and Linux, you can use relative rpath linking. On OS X use @executable_path either at link-time or later via install_name_tool . On Linux, use $ORIGIN in your rpath. Beware of quoting issues with $ORIGIN though.

I'm not trying to block support for a static libpq, I just don't see the point.

--
 Craig Ringer                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Chapman Flack
Дата:
Сообщение: Re: [HACKERS] idea: custom log_line_prefix components besidesapplication_name
Следующее
От: Craig Ringer
Дата:
Сообщение: Re: [HACKERS] building libpq.a static library