On 2019-Sep-30, Andres Freund wrote: > This currently fails on windows under mingw: > https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=jacana&dt=2019-09-30%2018%3A00%3A36 > > Sep 30 14:11:02 ccache x86_64-w64-mingw32-gcc -Wall -Wmissing-prototypes > -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels > -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv > -fexcess-precision=standard -Wno-format-truncation -g -O2 pg_rewind.o > parsexlog.o xlogreader.o datapagemap.o timeline.o fetch.o file_ops.o > copy_fetch.o libpq_fetch.o filemap.o win32ver.o -L../../../src/port > -L../../../src/common -L../../../src/common -lpgcommon -L../../../src/port > -lpgport -L../../../src/interfaces/libpq -lpq -L../../../src/fe_utils > -lpgfeutils -Wl,--allow-multiple-definition -Wl,--disable-auto-import > -L/c/prog/3p64/lib -L/c/prog/3p64/lib -L/c/prog/3p64/openssl-win64/lib/VC > -Wl,--as-needed -lpgcommon -lpgport -lintl -lxslt -lxml2 -lz -lws2_32 -lm > -lws2_32 -o pg_rewind.exe > Sep 30 14:11:02 ../../../src/fe_utils/libpgfeutils.a(recovery_gen.o): In > function `GenerateRecoveryConfig': > Sep 30 14:11:02 > c:/mingw/msys/1.0/home/pgrunner/bf/root/HEAD/pgsql.build/../pgsql/src/fe_utils/recovery_gen.c:33: > undefined reference to `createPQExpBuffer' > Sep 30 14:11:02 > c:/mingw/msys/1.0/home/pgrunner/bf/root/HEAD/pgsql.build/../pgsql/src/fe_utils/recovery_gen.c:44: > undefined reference to `PQserverVersion' > > I assume the issue is that the specified link order is: > LDFLAGS_INTERNAL += $(libpq_pgport) -L$(top_builddir)/src/fe_utils -lpgfeutils > but pgfeutils introduces a dependency on symbols from libpq that weren't > needed at the time libpq was linked. Therefore they aren't included > inthe resulting library.
Hmm, that's weird but understandable. Thanks for researching. > I'll reorder them. Thanks. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
