Re: libcurl in libpq.pc

Поиск
Список
Период
Сортировка
От Christoph Berg
Тема Re: libcurl in libpq.pc
Дата
Msg-id aNKrsxorUpvzdJsY@msg.df7cb.de
обсуждение исходный текст
Ответ на Re: libcurl in libpq.pc  (Christoph Berg <myon@debian.org>)
Ответы Re: libcurl in libpq.pc
Список pgsql-hackers
Re: To Jacob Champion
> It turns out that pkg-config is picky when it doesn't find the .pc
> files listed in Requires.private. So, without libcurl4-openssl-dev
> installed:

What I didn't say explicitly in the last message is that I want to
avoid that all programs now build-depending on libpq-dev would have to
add libcurl4-openssl-dev, or libpq-dev would have to depend on that.

> But CFLAGS is not:
> 
> $ pkgconf --cflags libpq
> Package libcurl was not found in the pkg-config search path.

Furthermore, with libcurl4-openssl-dev installed, the pkgconf output
changes, as said in that FAQ entry:

$ pkgconf --cflags libpq
-I/usr/include/postgresql -I/usr/include/x86_64-linux-gnu -isystem /usr/include/mit-krb5 -I/usr/include/p11-kit-1

That might be harmless, but we should avoid it.


For reference, the current 18.0 behavior:

$ pkgconf --libs libpq
-lpq
$ pkgconf --cflags libpq
-I/usr/include/postgresql -I/usr/include/x86_64-linux-gnu -isystem /usr/include/mit-krb5 -I/usr/include/p11-kit-1
$ pkgconf --libs libpq
-lpq
$ pkgconf --libs --static libpq
-lpq -lpgcommon -lpgport -lpq-oauth -lssl -lcrypto -lgssapi_krb5 -lm -lldap -lssl -lz -lzstd -ldl -pthread -lcrypto -lz
-lzstd-ldl -pthread -lcurl -lidn2 -llber -lldap -llber -lssh2 -lssl -lcrypto -lcrypto -lunistring -lz -lbrotlidec
-lbrotlicommon-lzstd -pthread -L/usr/lib/x86_64-linux-gnu/mit-krb5 -lgssapi_krb5 -L/usr/lib/x86_64-linux-gnu/mit-krb5
-lkrb5-lk5crypto -lcom_err -lkrb5support -lssl -lz -lzstd -ldl -pthread -lcrypto -lz -lzstd -ldl -pthread -lpsl -lssh2
-lssl-lcrypto -lz -lgpg-error -lcrypto -lzstd -ldl -pthread -lz -lrtmp -lz -lgmp -lgnutls -lgmp -lunistring -latomic
-lnettle-lgmp -lnettle -ltasn1 -lidn2 -lunistring -lp11-kit -lhogweed -lgmp -lnettle -lnghttp2 -lnghttp3
 

(ugh)

And after the libpq.pc change I plan:

$ pkgconf --cflags libpq
-I/usr/include/postgresql
$ pkgconf --cflags --static libpq
-I/usr/include/postgresql
$ pkgconf --libs libpq
-lpq
$ pkgconf --libs --static libpq
-lpq -lpgcommon -lpgport -lpq-oauth -lssl -lcrypto -lgssapi_krb5 -lm -lldap -lcurl -lssl -lz -lzstd -ldl -pthread
-lcrypto-lz -lzstd -ldl -pthread
 


Christoph



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