Re: pgsql: pg_rewind: Allow writing recovery configuration

From: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: Re: pgsql: pg_rewind: Allow writing recovery configuration
Date: 2019-09-30 19:27:27
Message-ID: 20190930192727.GA32097@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

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

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Andres Freund 2019-09-30 19:50:29 pgsql: Fix pg_rewind link order issue introduced in 927474ce1a2.
Previous Message Andres Freund 2019-09-30 19:20:13 Re: pgsql: pg_rewind: Allow writing recovery configuration