Bueno, aparentemente agregando la linea -DHAVE_LONG_INT_64=1 a la compilacion pudo compilar sin problema , ahora probar si funciona de verdad.me gustaria saber como hace ese configure como dices porque necesito un Makefile y en windows no se ni por donde empezar con eso Gracias
*-------------------------------------------------------* *-Edwin Quijada *-Developer DataBase *-JQ Microsistemas *-Soporte PostgreSQL *-www.jqmicrosistemas.com *-809-849-8087 *-------------------------------------------------------* Date: Thu, 27 Oct 2011 21:40:33 -0300 From: rjgonz...@estrads.com.ar To: listas_quij...@hotmail.com CC: reing...@gmail.com; pgsql-es-ayuda@postgresql.org Subject: Re: [pgsql-es-ayuda] Compilacion funciones en C y Postgres desde Windows El 27/10/11 21:21, Edwin Quijada escribió: <!-- .hmmessage P { margin:0px; padding:0px } body.hmmessage { font-size: 10pt; font-family:Tahoma } --> El 27/10/11 20:07, Edwin Quijada escribió: Gracias Mariano. Pero el problem mio ahora es que estoy compilando con MinGW y al parecer el core de Postgres como que no lo usa. El problema que estoy teniendo es del compilador realmente 00276 #ifndef HAVE_INT64 00277 typedef long long int int64; 00278 #endif 00279 #ifndef HAVE_UINT64 00280 typedef unsigned long long int uint64; 00281 #endif 00282 #else 00283 /* neither HAVE_LONG_INT_64 nor HAVE_LONG_LONG_INT_64 */ 00284 #error must have a working 64-bit integer datatype ----> Este es mi error y por eso no me permite crear el objeto 00285 #endif Tenes el archivo config.log para verlo? Aparte de eso, hubo un tema igual hace unos dias y resulto que era un problema descomprimiendo con WinZIP....pero no tengo idea ya que no uso windows desde hace años === 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 Sin eso no vas a poder compilar nada de nada....solo los fuentes no alcanzan (y no estoy seguro si tenes que compilarlo tambien para que resuelva las librerias el likeditor) Gracias. ================= Mira como compilo las extensiones, esto lo tome de una pagina de Mariano. D:\mingw\bin\gcc -g -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv -I "C:/ariela/db/include/" -I "C:/ariela/db/include/server" -I "C:/ariela/db/include/server/port/win32" -DEXEC_BACKEND "-I C:/ariela/db/include/server/port/win32" -c pg2.c -o pg2.o D:\mingw\bin\gcc -shared -o pg_server_function.dll pg2.o -L "C:\ariela\db\lib" -lpostgres Con esto compilo sin problemas por eso te digo que no me genera el configure. Al compilar da el error #error must have a working 64-bit integer datatype y no crea el objecto Si estuviera compilando sin problemas no estabamos hablando cierto? :) Me baje los fuentes de postgresql para ver exactamente esto y HAVE_LONG_INT_64 es definido en un archivo confdefs.h....por configure.... Tenes dos opciones como yo lo veo.... 1 - ejecuta configure y listo....compila lo tuyo 2 - agrega -DHAVE_LONG_INT_64=1 a tu comando de compilacion y espera que no aparezcan mas errores....pero estoy seguro que vas a tener mas