[Haskell-cafe] partial solved problem installing postgreSQL-libpq on Windows?

Kees Bleijenberg K.Bleijenberg at lijbrandt.nl
Thu Jun 16 09:47:34 UTC 2016


Maybe I've found a part of the solution. I changed in postgresql-libpq.cabal
Extra-Libraries: from pq to libpq.

Then runHaskell xx configure -ghc, runHaskell xx build and then runHaskell
xx install. No errors.. I'am happy.

But. if I  try to install postgresql-simple or hasql I get this error :

..

<command line>: can't load .so/.DLL for:
d:/PROGRA~2/POSTGR~1/9.3/lib\libpq.dll (addDLL: could not load DLL)

ghc.exe: d:/PROGRA~2/POSTGR~1/9.3/lib\libpq: %1 is not a valid Win32
application.

...

 

dir d:\PROGRA~2\POSTGR~1\9.3\lib\libpq.dll finds the dll, but
d:/PROGRA~2/POSTGR~1/9.3/lib/libpq.dll  gives: 'Parameter format not
correct'.

These mangled filenames come from pg_config.exe.

Is this a filename mangling problem? Any idea what is going on?

 

Kees

 

 

---------------------------

I want to install postgreSQL-libpq on Windows 7 64 bits with ghc version
7.10.1 and cabal version 1.22.4.0

This is what I did: 

Installed mingw

>From the msys prompt: pexports "d:\program
files\postgreSQL\9.3\bin\libpq.dll" > libpq.def

>From the msys prompt: dlltool  -d libpq.def -l libpq.a

The file libpq.a is created. I copied the file to d:\program
files\postgreSQL\9.3\bin\ and then from de cmd prompt:

cabal install postgreSQL-libpq --extra-include-dirs="d:\program
files\postgreSQL\9.3\include" --extra-lib-dirs="d:\program
files\postgreSQl\9.3\bin"

I get: 

Resolving dependencies...

Configuring postgresql-libpq-0.9.1.1...

Failed to install postgresql-libpq-0.9.1.1

Build log (
C:\Users\kees\AppData\Roaming\cabal\logs\postgresql-libpq-0.9.1.1.log ):

[1 of 1] Compiling Main             (
D:\Temp\cabal-tmp-6140\postgresql-libpq-0.9.1.1\dist\setup\setup.hs,
D:\Temp\cabal-tmp-6140\postgresql-libpq-0.9.1.1\dist\setup\Main.o )

Linking D:\Temp\cabal-tmp-6140\postgresql-libpq-0.9.1.1\dist\setup\setup.exe
...

Configuring postgresql-libpq-0.9.1.1...

setup.exe: Missing dependency on a foreign library:

* Missing C library: pq

This problem can usually be solved by installing the system package that

provides this library (you may need the "-dev" version). If the library is

already installed but in a non-standard location then you can use the flags

--extra-include-dirs= and --extra-lib-dirs= to specify where it is.

 

What can I do?

 

Kees

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20160616/65d2393e/attachment-0001.html>


More information about the Haskell-Cafe mailing list