Segfault-Inc / Multicorn

Data Access Library
https://multicorn.org/
PostgreSQL License
699 stars 145 forks source link

use Multicorn in windows #182

Open frbsfri opened 7 years ago

frbsfri commented 7 years ago

I want to install Multicorn on my windows machine from the source, but when I run make command in MINGW, I get the following error:

make: pg_config: Command not found make: python3.5-config: Command not found expr: syntax error expr: syntax error Python version is 3.5 ./preflight-check.sh which: pg_config: unknown command No pg_config found in your path. Please check if you installed the PostgreSQL development packages. make: *** [preflight-check] Error 1

I have installed PostgreSQL 9.6 in my windows 8. How should I install PostgreSQL development packages, if that is the problem?

phrrngtn commented 7 years ago

I think it may be too difficult to get this working via MINGW. Are you using a 64-bit PostgreSQL from an installer? I presume that it is built with VS and also that your CPython is the official one from Python.org and has the same bittedness and same compiler. I would attempt to build the extension using the techniques described here: https://blog.2ndquadrant.com/compiling-postgresql-extensions-visual-studio-windows/

I think there may be a bunch of problems with multicorn servers that load C extensions unless they are built with a compatible ABI/unicode size etc.

Please take this with a pinch of salt: I may be overly pessimistic wrt mingw simply because I have never been able to get stuff working with anything over than VS.

ghost commented 4 years ago

I've been trying desperately to get this working on Windows 10 with PostgreSql 12 to no avail. I have tried using

What I get is the following:

make: /bin/sh: Command not found
make: /bin/sh: Command not found
Makefile:54: c:/Program: No such file or directory
Makefile:54: Files/PostgreSQL/12/lib/pgxs/src/makefiles/pgxs.mk: No such file or directory
make: /bin/sh: Command not found
make: python-config: Command not found
make: /bin/sh: Command not found
make: expr: Command not found
make: expr: Command not found
make: /bin/sh: Command not found
Python version is
make: *** No rule to make target `Files/PostgreSQL/12/lib/pgxs/src/makefiles/pgxs.mk'.  Stop.

When I use mingw-w64\x86_64-8.1.0-win32-sjlj-rt_v6-rev0 I get the following:

'cut' is not recognized as an internal or external command,
operable program or batch file.
process_begin: CreateProcess(NULL, python-config --includes, ...) failed.
make: Makefile:90: pipe: Bad file descriptor
process_begin: CreateProcess(NULL, expr >= 90300, ...) failed.
make: Makefile:119: pipe: Bad file descriptor
process_begin: CreateProcess(NULL, expr >= 90500, ...) failed.
make: Makefile:127: pipe: Bad file descriptor
'cut' is not recognized as an internal or external command,
operable program or batch file.
Python version is
Makefile:54: Files/PostgreSQL/12/lib/pgxs/src/makefiles/pgxs.mk: No such file or directory
make: *** No rule to make target 'Files/PostgreSQL/12/lib/pgxs/src/makefiles/pgxs.mk'.  Stop.

Any help would be much appreciated!!!