Re: BUG #17681: Building the REL_12_13 source in Visual Studio 2013 fails.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: higuchi(dot)daisuke(at)fujitsu(dot)com
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #17681: Building the REL_12_13 source in Visual Studio 2013 fails.
Date: 2022-11-09 14:44:10
Message-ID: 3969640.1668005050@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

PG Bug reporting form <noreply(at)postgresql(dot)org> writes:
> I tried to build using the codes of REL_12_13 in the following environment,
> but it failed.
> The main messages when it fails are following:
> -----------------------------------
> "Z:\postgres\postgres.vcxproj" (default target) (2) ->
> (Link target) ->
> snprintf.obj : error LNK2019: unresolved external symbol snprintf
> referenced in function pg_strfromd [Z:\postgres\postgres.vcxproj]

Ugh.

> I think the cause of this error is the following commit regarding
> snprintf.
> As a test, I reverted this commit and built again, and the build
> succeeded.
> d33ac1ec2af5297b2ac8fbf89464f0c7f90a7955

Thanks for checking that. However, as that commit message says,
we require C99 support in v12 and up, and snprintf is definitely
required by C99. So I'm disinclined to revert that. If VS2013
can't supply snprintf, it's not meeting our minimum platform
standards, so we should remove it from the list of supported
platforms.

Having said that, Microsoft had had well over a dozen years by
that point to get off their duffs and build a C99-compliant
library. So I have to suspect that there is a snprintf lurking
somewhere --- maybe there is some build option you need to
enable to get it?

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2022-11-09 15:37:46 Re: BUG #17681: Building the REL_12_13 source in Visual Studio 2013 fails.
Previous Message Yugo NAGATA 2022-11-09 10:01:14 Re: BUG #17434: CREATE/DROP DATABASE can be executed in the same transaction with other commands