Ticket #2064 (closed defect: fixed)

Opened 8 months ago

Last modified 8 months ago

Building with Visual C++ 2008 Express Edition

Reported by: mloskot Assigned to: mloskot
Priority: high Milestone: 1.5.0
Component: ConfigBuild Version: svn-trunk
Severity: normal Keywords: visual c++ vs2008 express
Cc: warmerdam, dmorissette

Description

Current version of GDAL from SVN does not compile cleanly using Visual C++ compiler from the Visual Studio 2008 Express Editions bundle.

There is a few issues:

  • missing ATL required by VC6 layer
  • redefinition of vsnprintf. VC++2008 does include proper definition vsnprintf, without underscore)
  • deprecated and unavailable winres.h (can be safely replaced with windows.h and winver.h

Attachments

gdal-vs2008ee.patch (2.7 kB) - added by mloskot on 12/06/07 07:27:48.
Patch fixing GDAL core for Visual C++ 2008 Express Edition (compiler version 9.0). Does not include fixes for bindings, just core and default/internal drivers.
gdal-formats.txt (2.8 kB) - added by mloskot on 12/17/07 22:51:03.
List of GDAL formats built-in using Visual C++ 2008 (9.0)
ogr-formats.txt (0.6 kB) - added by mloskot on 12/17/07 22:51:20.
List of OGR formats built-in using Visual C++ 2008 (9.0)

Change History

12/06/07 07:27:48 changed by mloskot

  • attachment gdal-vs2008ee.patch added.

Patch fixing GDAL core for Visual C++ 2008 Express Edition (compiler version 9.0). Does not include fixes for bindings, just core and default/internal drivers.

12/06/07 07:46:41 changed by warmerdam

  • priority changed from normal to high.
  • owner changed from warmerdam to mloskot.
  • component changed from default to ConfigBuild.
  • cc set to warmerdam.
  • milestone set to 1.5.0.

Mateusz,

The patch looks ok, though I hope some day to reduce the complexity of VB6 related stuff.

Go ahead and apply.

12/06/07 08:50:06 changed by mloskot

  • status changed from new to assigned.

Frank,

I will run a few more tests after the Beta 2 is out, and will try to build more complete set of drivers and then apply bigger patch in one shot.

A few comments to VB6 support from the #gdal chat:

[14:15]  <mloskot> FrankW:  There is one issue with vs2008 patch
[14:15]  <mloskot> VB6 layer will not be built for all VS2008 editions, not only for Express
[14:15]  <FrankW> right, that's fine.
[14:15]  <mloskot> good

12/06/07 09:33:47 changed by dmorissette

  • cc changed from warmerdam to warmerdam, dmorissette.

12/17/07 22:51:03 changed by mloskot

  • attachment gdal-formats.txt added.

List of GDAL formats built-in using Visual C++ 2008 (9.0)

12/17/07 22:51:20 changed by mloskot

  • attachment ogr-formats.txt added.

List of OGR formats built-in using Visual C++ 2008 (9.0)

12/17/07 22:54:00 changed by mloskot

  • status changed from assigned to closed.
  • resolution set to fixed.

The VC++ 2008 patch has been updated and applied to SVN trunk (r13360).

There is list of drivers built-in using VC++2008 in the attached gdal-formats.txt and ogr-formats.txt files. The build was made using:

  • Xerces 2.8.0
  • Expat 2.0.1
  • libcurl 7.17.1
  • GEOS 3.0.0rc5
  • PROJ.4 4.5.0

12/17/07 22:57:18 changed by mloskot

One additional note, I also enabled PostgreSQL support using 8.2.5 binaries.

Also, following dependencies were built from sources using Visual C++ 2008: Expat, libcurl, GEOS, PROJ.4. Xerces-C 2.8.0 was used from official binaries dedicated for Visual C++ 2006 (8.0).