Re: Compilacion funciones en C y Postgres desde Windows

From: Rodrigo Gonzalez <rjgonzale(at)estrads(dot)com(dot)ar>
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: Edwin Quijada <listas_quijada(at)hotmail(dot)com>, reingart <reingart(at)gmail(dot)com>, Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Compilacion funciones en C y Postgres desde Windows
Date: 2011-10-28 13:33:55
Message-ID: 4EAAAF43.7000800@estrads.com.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 28/10/11 10:23, Alvaro Herrera escribió:
> Excerpts from Rodrigo Gonzalez's message of vie oct 28 09:15:37 -0300 2011:
>> El 27/10/11 21:42, Alvaro Herrera escribió:
>>> Excerpts from Rodrigo Gonzalez's message of jue oct 27 20:43:02 -0300 2011:
>>>
>>>>> Bueno , no tengo ese archivo porque no estoy compilando a Postgres
>>>>> sino un par de funciones. Lo que dices del zip fue una discusion en la
>>>>> lista en ingles pero era compilando Postgres. Use la pagina de Mariano
>>>>> para compilarlo con MingW, al parecer esto ha pasado mucho vi el mismo
>>>>> pro en una pagina en frances y a otra persona tratando de compilar a
>>>>> Pgrouting pero aun no consigo nada
>>>> Pero para poder compilar cualquier cosa contra postgresql tenes que al
>>>> menos ejecutar configure para que cree y configure config.h
>>> Bueno, en Windows el tarball incluye un archivo pg_config.win32.h (con
>>> todas las variables ya definidas), así que no sé si realmente es
>>> indispensable ejecutar configure como en otras plataformas.
>> No tenia idea de esto....entonces solamente in #include alcanzaria....
> El código que tú escribas ya debería incluir fmgr.h y postgres.h, con lo
> cual ya deberías tener todos los elementos de pg_config. Si no
> incluyeras postgres.h mucho de tu código no compilaría con muchos
> errores; si no incluyeras fmgr.h no podrías tener PG_MAGIC_BLOCK, el
> cual es obligatorio en todos los módulos cargables.
>
> (De hecho el error de compilación que reclama por un número de versión
> no coincidente viene precisamente del bloque PG_MAGIC_BLOCK).
>
>
Ahora esta claro, de acuerdo a lo que vos decis revise y tenes razon
pero falta un paso por lo que veo

postgres.h incluye c.h que incluye pg_config.h

El "problema" aca es que las definiciones para mingw estan en
pg_config.h.win32

Ahora bien, el makefile para vc hace algo bien simple que resuelve el
problema.....copy pg_config.h.win32 pg_config.h y listo....podes
compilar sin problemas....

Revisa src/win32.mak para ver que es lo que hace y hay que hacer lo mismo

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2011-10-28 13:52:40 Re: Compilacion funciones en C y Postgres desde Windows
Previous Message Mario Wojcik 2011-10-28 13:32:06 Re: Traduccion de la documentacion de pgpool