> Date: Fri, 3 Sep 2010 09:41:17 +0200 > Subject: Re: [GENERAL] Compiling extension C with MingW in windows, Error... > From: magnus@hagander.net > To: listas_quijada@hotmail.com > CC: pgsql-general@postgresql.org > > On Fri, Sep 3, 2010 at 5:31 AM, Edwin Quijada > <listas_quijada@hotmail.com> wrote: > > Hi, I am tryng to compile a C extension in windows using Minigw but always I > > get the same error > > > > C:\Program Files\PostgreSQL\8.3\share\exte_c>C:\mingw\bin\gcc -shared -o > > pg2.dll > > pg2.o > > pg2.o:pg2.c:(.text+0x86): undefined reference to > > `_imp__CurrentMemoryContext' > > pg2.o:pg2.c:(.text+0x92): undefined reference to `MemoryContextAlloc' > > collect2: ld returned 1 exit status > > > > This error is just when it links. > > You need to link against postgres.exe to get access to these symbols. > I don't recall if the mingw linker allows you to just specify the EXE > file these days, but I think it does. If not, you'll need to create an > import library from the EXE and link to that (the binary distribution > only ships with import libraries for MSVC, but mingw can't use > standard windows import libraries, so you need to create your own > there)
Magnus how can I linking against postgres.exe I mean the gcc line. I did others function and worked fine
This is the function that I did and worked, with this code I did a foo.dll and added this to postgresql.