Build problems with latest CVS (2007-06-03) on MSVC++ Express 2005

Lists: pgsql-odbc
From: Mark Cave-Ayland <mark(dot)cave-ayland(at)ilande(dot)co(dot)uk>
To: pgsql-odbc(at)postgresql(dot)org
Subject: Build problems with latest CVS (2007-06-03) on MSVC++ Express 2005
Date: 2007-06-03 13:26:26
Message-ID: 1180877186.5205.13.camel@mca-desktop
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-odbc

Hi everyone,

I'm working on building the latest CVS of psqlODBC from CVS using MS
Visual C++ Express 2005 and thought you may like some extra feedback on
the build process. The instructions in win32-compilation.html were
helpful, but I needed to make the following changes:

1. Modify the PostgreSQL installation to include the development headers
and MSVC libraries.

2. Open psqlodbc.rc and make the following change on line 10:

#include "afxres.h" -> #include "mfc/afxres.h"

3. Copy C:\OpenSSL\lib\VC\ssleay32MT.lib as ssleay32.lib.

3. Pass the MSDTC=no option to nmake.

If I try to build without the MSDTC=no option then I get the following
error upon compilation:

Generating Code...
link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm53.tmp
Creating library .\Release\psqlodbc35w.lib and object .\Release
\psqlodbc35w.exp
cl.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm56.tmp pgxalib.cpp
link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm57.tmp
Creating library .\Release\pgxalib.lib and object .\Release
\pgxalib.exp
link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm59.tmp
msdtc_enlist.obj : error LNK2019: unresolved external symbol
_CC_set_autocommit
referenced in function "short __cdecl EnlistInDtc_1pipe(struct
ConnectionClass_ *,struct ITransaction *,struct ITransactionDispenser
*)" (?EnlistInDtc_1pipe@@YAFPAUConnectionClass_@@PAUITransaction@@PAUITransactionDispenser@@@Z)
.\Release\pgenlist.dll : fatal error LNK1120: 1 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 8
\VC\BIN\link.exe"' : return code '0x460'
Stop.

ATB,

Mark.


From: "Hiroshi Saito" <z-saito(at)guitar(dot)ocn(dot)ne(dot)jp>
To: "Mark Cave-Ayland" <mark(dot)cave-ayland(at)ilande(dot)co(dot)uk>
Cc: <pgsql-odbc(at)postgresql(dot)org>
Subject: Re: Build problems with latest CVS (2007-06-03) on MSVC++ Express 2005
Date: 2007-06-04 01:59:56
Message-ID: 01ad01c7a64c$0cad2e70$c701a8c0@HP22720319231
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-odbc

Hi.

I'm sorry very late reaction.

> Hi everyone,
>
> I'm working on building the latest CVS of psqlODBC from CVS using MS
> Visual C++ Express 2005 and thought you may like some extra feedback on
> the build process. The instructions in win32-compilation.html were
> helpful, but I needed to make the following changes:

Thank you for your work time.!!

>
>
> 1. Modify the PostgreSQL installation to include the development headers
> and MSVC libraries.
>
> 2. Open psqlodbc.rc and make the following change on line 10:
>
> #include "afxres.h" -> #include "mfc/afxres.h"

Ahh, It seems that, as for VC-Express, installation of Platform SDK and a setup
of PATH are independently needed. We may be that the setting method needs to
be shown. of course, I need to try hard. some suggestion is welcomed.

>
> 3. Copy C:\OpenSSL\lib\VC\ssleay32MT.lib as ssleay32.lib.

Um, It seems that it has caused confusion although it was also another report.
I'm always build it by myself. then, It is always stabilized and serves as ssleay32.lib.
It seems that it probably originates in the problem of Inoue-san suggested before,
which is /MD,/MDd, and /MT,/MTd....
I consider these on the problem which should still be discussed. It is likely to pose a
problem also by the PostgreSQL main part. Moreover, we need time to investigate
to a slight degree.

>
> 3. Pass the MSDTC=no option to nmake.
>
>
> If I try to build without the MSDTC=no option then I get the following
> error upon compilation:

Oh sorry, please let me check again tonight.
Thanks!

Regards,
Hiroshi Saito

>
>
> Generating Code...
> link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm53.tmp
> Creating library .\Release\psqlodbc35w.lib and object .\Release
> \psqlodbc35w.exp
> cl.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm56.tmp pgxalib.cpp
> link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm57.tmp
> Creating library .\Release\pgxalib.lib and object .\Release
> \pgxalib.exp
> link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm59.tmp
> msdtc_enlist.obj : error LNK2019: unresolved external symbol
> _CC_set_autocommit
> referenced in function "short __cdecl EnlistInDtc_1pipe(struct
> ConnectionClass_ *,struct ITransaction *,struct ITransactionDispenser
> *)"
> (?EnlistInDtc_1pipe@@YAFPAUConnectionClass_@@PAUITransaction@@PAUITransactionDispenser@@@Z)
> .\Release\pgenlist.dll : fatal error LNK1120: 1 unresolved externals
> NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 8
> \VC\BIN\link.exe"' : return code '0x460'
> Stop.
>
>
> ATB,
>
> Mark.


From: Hiroshi Inoue <inoue(at)tpf(dot)co(dot)jp>
To: Mark Cave-Ayland <mark(dot)cave-ayland(at)ilande(dot)co(dot)uk>
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: Build problems with latest CVS (2007-06-03) on MSVC++ Express 2005
Date: 2007-06-04 03:23:35
Message-ID: 466385B7.3030509@tpf.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-odbc

Mark Cave-Ayland wrote:
> Hi everyone,
>
> I'm working on building the latest CVS of psqlODBC from CVS using MS
> Visual C++ Express 2005 and thought you may like some extra feedback on
> the build process. The instructions in win32-compilation.html were
> helpful, but I needed to make the following changes:

> 3. Pass the MSDTC=no option to nmake.
>
>
> If I try to build without the MSDTC=no option then I get the following
> error upon compilation:
>
>
> Generating Code...
> link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm53.tmp
> Creating library .\Release\psqlodbc35w.lib and object .\Release
> \psqlodbc35w.exp
> cl.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm56.tmp pgxalib.cpp
> link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm57.tmp
> Creating library .\Release\pgxalib.lib and object .\Release
> \pgxalib.exp
> link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm59.tmp
> msdtc_enlist.obj : error LNK2019: unresolved external symbol
> _CC_set_autocommit

Oops I've forgotten to commit psqlodbc(a).def to cvs.
I would commit them tonight.

regards,
Hiroshi Inoue


From: Mark Cave-Ayland <mark(dot)cave-ayland(at)ilande(dot)co(dot)uk>
To: Hiroshi Inoue <inoue(at)tpf(dot)co(dot)jp>
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: Build problems with latest CVS (2007-06-03) on MSVC++ Express 2005
Date: 2007-06-04 21:23:08
Message-ID: 1180992188.11100.4.camel@mca-desktop
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-odbc

On Mon, 2007-06-04 at 12:23 +0900, Hiroshi Inoue wrote:

> > If I try to build without the MSDTC=no option then I get the following
> > error upon compilation:
> >
> >
> > Generating Code...
> > link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm53.tmp
> > Creating library .\Release\psqlodbc35w.lib and object .\Release
> > \psqlodbc35w.exp
> > cl.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm56.tmp pgxalib.cpp
> > link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm57.tmp
> > Creating library .\Release\pgxalib.lib and object .\Release
> > \pgxalib.exp
> > link.exe @C:\DOCUME~1\MARKCA~1\LOCALS~1\Temp\nm59.tmp
> > msdtc_enlist.obj : error LNK2019: unresolved external symbol
> > _CC_set_autocommit
>
> Oops I've forgotten to commit psqlodbc(a).def to cvs.
> I would commit them tonight.
>
> regards,
> Hiroshi Inoue

Inoue-san,

I've just done a cvs update and I can now compile the latest CVS version
of the driver. Many thanks!

Kind regards,

Mark.