Re: [HACKERS] building libpq.a static library
От | Greg Stark |
---|---|
Тема | Re: [HACKERS] building libpq.a static library |
Дата | |
Msg-id | CAM-w4HNnBzG7FPjLqQKigHD75Dj2a0qwXVEz-kbLj8qbQdwYSQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [HACKERS] building libpq.a static library (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: [HACKERS] building libpq.a static library
|
Список | pgsql-hackers |
On 12 July 2017 at 16:11, Tom Lane <tgl@sss.pgh.pa.us> wrote: > Jeroen Ooms <jeroen@berkeley.edu> writes: > >> This works but it's a bit of a pain to maintain. I was wondering if >> this hack could be merged so that the standard 'configure >> --enable-static' script would install a static library for libpq >> alongside the shared one. > > FWIW, we used to have support for building static libpq, but > we got rid of it a long time ago. I couldn't find the exact > spot in some desultory trawling of the commit history. Fwiw I think the real problem is that building static libraries "properly" requires different compiler options -- notably they're not normally built with -fPIC. So that means building every object twice which kind of breaks make's build model which has a simple dependency graph where each object appears once. Some packages do this by inventing a foo-shared.o and foo-static.o but that introduces its own weirdness. I don't know what the downsides would be of creating a static library out of objects built with -fPIC. It might just be a small performance penalty which might be no big deal for libpq. That may be a good compromise. -- greg
В списке pgsql-hackers по дате отправления: