Re: Installing DBD::Pg on Strawberry Perl
"T.J. Ferraro" <[email protected]>
| Newsgroups | gmane.comp.db.postgresql.dbdpg |
|---|---|
| Message-ID | <[email protected]> |
It's been a while since I packaged the 1.49 modules, but it's starting
to come back to me.
I do recall the little #define for snprintf. But I could have sworn
there was something that also needed to be hacked because of the lack of
strings.h, wasn't there? Wish I had written this stuff down.. :)
In any case, the next problem I'm dealing with is:
libpq.lib(fe-connect.obj) : error LNK2019: unresolved external symbol
_DeleteSecurityContext@4 referenced in function _closePGconn
libpq.lib(fe-connect.obj) : error LNK2019: unresolved external symbol
_FreeCredentialsHandle@4 referenced in function _closePGconn
libpq.lib(fe-auth.obj) : error LNK2019: unresolved external symbol
_FreeContextBuffer@4 referenced in function _pg_SSPI_continue
libpq.lib(fe-auth.obj) : error LNK2019: unresolved external symbol
_InitializeSecurityContextA@48 referenced in function _pg_SSPI_continue
libpq.lib(fe-auth.obj) : error LNK2019: unresolved external symbol
_AcquireCredentialsHandleA@36 referenced in function _pg_SSPI_startup
I'm not sure what library it's looking for. I'm *hoping* it doesn't have
anything to do with VS2005 vs VS.NET. I noticed during the postgres
compile it wanted a VS2005 tool. But by that point libpq was already
compiled so I didn't worry about it.
Maybe I should change the topic considering this no longer has anything
to do with Strawberry Perl.. :)
T.J.
Mark Dootson wrote:
> Hi,
>
> Not directly helpful for MinGW / Strawberry, but I try to compile all my modules for ActiveState perl with VC6.
>
> I have PostgreSQL 8.3 installed from the msi and I selected to install development files.
>
> The changes I needed to make in DBD::Pg were:
>
> Makefile.PL -
> add 'use DBI::DBD;'.
> comment out "unlink $output->{MAKEFILE};" at line 247
>
> dbdimp.c
> comment out #include <strings.h>
>
> I then used the following statements
>
> set PATH=C:\PROGRA~1\PostgreSQL\8.3\bin;%PATH%
> set DBI_DSN=dbi:Pg:dbname=testdb
> set DBI_USER=username
> set DBI_PASS=password
> set POSTGRES_HOME=C:/PROGRA~1/PostgreSQL/8.3
> set POSTGRES_INCLUDE=C:/PROGRA~1/PostgreSQL/8.3/include
> set POSTGRES_LIB=C:/PROGRA~1/PostgreSQL/8.3/lib
>
> before doing
>
> perl Makefile.PL
> nmake
> nmake test
>
>
> All seems to work OK.
>
> I also built against my own perl compiled with VC6. For this I needed an extra step.
> I had to "#define snprintf _snprintf" in quote.c rather than dbdimp.c
>
> I haven't quite figured out why - but there you go.
>
> Anyway, I think that if VC6 is possible, MinGW should be OK too
>
>
> F.Y.I. - Of course, when you run DBD::Pg built this way, you must have libpq.dll and its dependencies on your path.
>
>
>
>
> Regards
>
> Mark
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>