Fabien,
There's quite a few issues. Here's what I had to do in order to get my stuff working. I don't think it's any use for me to submit changes in form of a patch at this point since pgxs seems to be a bit on the drawing table still. I started another thread that was not win32 related
also with the subject "Problems with pgxs" that I relate to here as well.


>>... the directory "include/port/win32" is not present in the PostgreSQL
>>binary installation. Without it, it's not possible to compile on win32.
>
> Indeed, this directory is not installed by the "install" target.
>
> If it is really needed, it is no big deal.

It's needed alright. It contains files included from c.h which in turn is included from postgres.h.

> However if done so, it should
> be under "include/server/port/win32/", not "include/port/win32", but this
> should be taken care of by some macro, I guess.
>
Yes, a special macro is needed for this, I made a change in Makefile.global (around line 176), like so:


ifdef PGXS
override CPPFLAGS := -I$(includedir_server) -I$(includedir_server)/port/win32 -I$(includedir_internal) $(CPPFLAGS)
else # not PGXS
...


> You can try to copy by hand the directory into include/server/port/ of
> your installation, and check whether it is the only issue.
>
Next problem is that the all-lib target is wrong (see other thread). I can get around that by changing my local makefile and instead of the recommended:


    all: all-lib

use:

    all: $(shlib)

Final issue is BE_DLLLIBS in Makefile.port. It's defined as:

    BE_DLLLIBS= -L$(top_builddir)/src/backend -lpostgres

The src/backend is of course not present but what's worse, the libpostgres.a library is not included in the install. I copied it from src/backend into the <prefix>/lib directory and changed the Makefile.port to read:

ifdef PGXS
        BE_DLLLIBS= -lpostgres
else
        BE_DLLLIBS= -L$(top_builddir)/src/backend -lpostgres
endif

and everything build OK.

Regards,
Thomas Hallgren



---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org

Reply via email to