On 11/2/2017 1:05 AM, Laurenz Albe wrote:
> Igal @ Lucee.org wrote:
>> After reading Craig's excellent blog post at
https://blog.2ndquadrant.com/compiling-postgresql-extensions-visual-studio-windows/I decided to try and build a real
extension- tds_fdw.
>> I've set it up in Visual Studio Community 2017, but am getting the following errors:
>> Error C2375 'tds_fdw_handler': redefinition; different linkage tds_fdw
E:\Workspace\git\tds_fdw\src\tds_fdw.c 118
>> Error C2375 'tds_fdw_validator': redefinition; different linkage tds_fdw
E:\Workspace\git\tds_fdw\src\tds_fdw.c 156
>> Full output:
>> 1>------ Rebuild All started: Project: tds_fdw, Configuration: Release x64 ------
>> 1>deparse.c
>> 1>options.c
>> 1>tds_fdw.c
>> 1>src\tds_fdw.c(118): error C2375: 'tds_fdw_handler': redefinition; different linkage
>> 1>E:\Workspace\git\tds_fdw\include\tds_fdw.h(130): note: see declaration of 'tds_fdw_handler'
>> 1>src\tds_fdw.c(156): error C2375: 'tds_fdw_validator': redefinition; different linkage
>> 1>E:\Workspace\git\tds_fdw\include\tds_fdw.h(131): note: see declaration of 'tds_fdw_validator'
>> 1>Generating Code...
>> 1>Done building project "tds_fdw.vcxproj" -- FAILED.
>> ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========
>> I'm not sure if it's related, but the FreeTDS version that I found for Windows is marked as 32bit and I am trying to
buildfor 64bit.
>> I believe that extensions like tds_fdw and pgloader will help users on TDS databases to migrate to Postgres and will
improveadoption of the project. I will be more than happy to publish my binaries of the extension if I ever get that
far.
>> Can anyone help?
> Based on my experience with oracle_fdw, I would change the function declaration
> in tds_fdw.h to
>
> extern PGDLLEXPORT Datum tds_fdw_handler(PG_FUNCTION_ARGS);
Thanks, Laurenz, but I am still getting the same error after prefixing
the PGDLLEXPORT statements with `extern` in the `.c` files. The `.h`
files already had `extern` for those declarations.
Any other ideas?
Thank you,
Igal
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general