mingw64 built pg_sphere not loadable in VC++ PostgreSQL builds - double_to_shortest_decimal_buf - Mailing list pgsql-hackers

From Regina Obe
Subject mingw64 built pg_sphere not loadable in VC++ PostgreSQL builds - double_to_shortest_decimal_buf
Date
Msg-id 000001db1df8$49765bb0$dc631310$@pcorp.us
Whole thread Raw
List pgsql-hackers
I'm not sure what the issue is here exactly, if it's a bug in Meson VC++ or
something in pgSphere code.

I've managed to build pg_sphere binaries under mingw64 and load them and
regress fine In PostgreSQL EDB VC++  for versions 14-16.

However when I tried PG17, the create extension pg_sphere fails with

pg_sphere.dll: The specified procedure could not be found.

failed , but works perfectly fine under mingw64

As I documented here - https://github.com/postgrespro/pgsphere/issues/130

I narrowed down the issue to this call:

https://github.com/postgrespro/pgsphere/blob/master/src/output.c#L163

Is there any reason why the VC++ built PostgreSQL wouldn't be exporting the
double_to_shortest_decimal_buf function?

I would think referencing 

#include "common/shortest_dec.h"

As noted here
https://github.com/postgrespro/pgsphere/blob/master/src/output.c#L5C1-L5C33
should be sufficient.

I should note I've built postgis, pgrouting, mobilitydb, http, ogr_fdw
extensions under mingw64 and been able to use them and regress fine under
PostgreSQL EDB 17 VC++ but none of those extensions are using the
double_to_shortest_decimal_buf function

Thanks,
Reigna




pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: Enhance create subscription reference manual
Next
From: Amit Kapila
Date:
Subject: Re: Using per-transaction memory contexts for storing decoded tuples