Opened 14 years ago

Closed 5 years ago

#3479 closed defect (wontfix)

GDAL failed to link when compiled with OGDI support on Windows

Reported by: emmanueld Owned by: warmerdam
Priority: normal Milestone: closed_because_of_github_migration
Component: default Version: 1.7.1
Severity: normal Keywords: GDAL, OGDI, Windows
Cc:

Description

Target platforms: Windows 32 & 64 bits
Cygwin: CYGWIN_NT-5.2-WOW64, version 1.7.1
MS Visual C++:

  • (32 bits) 15.00.30729.01 for 80x86 (Visual C++ .Net 2008 Express SP1)
  • (64 bits) 15.00.30729.01 for x64 (Visual C++ .Net 2008 Express SP1)

OGDI version: 3.1.5
GDAL version: 1.7.1

When OGDI support is active, the GDAL dll fail to link. It seems it tries to link against zlib_ogdi31.dll (which lacks inflateCopy) instead its own internal zlib. To correct the problem, I had to

1) modify nmake.opt : remove zlib_ogdi$(OGDIVER).lib from the OGDILIB variable.

Current code:

#OGDILIB =	$(OGDIDIR)\lib\$(TARGET)\ogdi$(OGDIVER).lib \
#		$(OGDIDIR)\lib\$(TARGET)\zlib_ogdi$(OGDIVER).lib

Proposed code:

#OGDILIB =	$(OGDIDIR)\lib\$(TARGET)\ogdi$(OGDIVER).lib

2) modify frmts/makefile.vc :

Current code:

!IFDEF OGDIDIR
EXTRAFLAGS	=	$(EXTRAFLAGS) -DFRMT_ogdi
!ELSE
EXTRAFLAGS	=	$(EXTRAFLAGS) -DFRMT_zlib
!ENDIF

Proposed code:

!IFDEF OGDIDIR
EXTRAFLAGS	=	$(EXTRAFLAGS) -DFRMT_ogdi
!ENDIF
EXTRAFLAGS	=	$(EXTRAFLAGS) -DFRMT_zlib

(To make sure that FRMT_zlib is always compiled in GDAL).

These changes will not disallow OGDI to use itw own version of zlib.

Change History (2)

comment:1 by Jukka Rahkonen, 9 years ago

Heads-up: Suggested edits have not been done. No bad words about them either.

comment:2 by Even Rouault, 5 years ago

Milestone: closed_because_of_github_migration
Resolution: wontfix
Status: newclosed

This ticket has been automatically closed because Trac is no longer used for GDAL bug tracking, since the project has migrated to GitHub. If you believe this ticket is still valid, you may file it to https://github.com/OSGeo/gdal/issues if it is not already reported there.

Note: See TracTickets for help on using tickets.