[Gdal-dev] GDAL with ECW SDK 3.3 on Mac OS X
William Kyngesburye
woklist at kyngchaos.com
Thu Jan 26 15:18:04 EST 2006
Well, succeeded in building, yes. But I get a crash in GDAL when
trying to read ECW files. It's apparently a known problem for the
ECW developers, so I didn't pursue it to see what could be done, and
I wait for them to fix it.
Anyways, the GDAL configure check problem is because when you specify
the ecw path, it looks for the linux-style .so library, not a Mac
dylib, but it does check for libecwj2.dylib. So, when you link in
libecwj2, it finds that and sets the lib options accordingly, -
lecwj2, instead of -lNCSEcw -lNCSCnet -lNCSUtil as it needs to be.
My fix is to edit the GDAL configure and change libNCSCnet.so to
libNCSCnet.dylib, instead of linking libecwj2.
There is another problem that will probably crop up next - the ECW
libraries need the Carbon framework, but the version of libtool used
by GDAL doesn't pass framework options thru, so you will get some
more undefined symbols errors. In configure, find where it sets
CARBON_FRAMEWORK, and change it to:
CARBON_FRAMEWORK="-XCClinker framework -XCClinker Carbon"
On Jan 26, 2006, at 12:55 PM, Armin Burger wrote:
> Hello
>
> I guess that some folks succeeded in compiling GDAL with ECW
> support under Max OS X (Tiger). I tried the combination GDAL 1.3.1
> and ECW SDK 3.3 RC1. After applying the once on this list mentioned
> small patch for the SDK it compiled fine.
>
> Then GDAL gives an error during the configure script:
>
> ...
> checking for libNCSEcw.so or libecwj2... configure: error: not
> found in /usr/local/lib or /usr/local/bin.
>
>
> The libraries of ECW are under /usr/local/lib. I checked the
> configure script and just tried a link
>
> /usr/local/libecwj2.dylib -> /usr/local/lib/libNCSEcw.0.0.0.dylib
>
> The configure then went on. Also the compilation went quite far.
> But somewhere towards the end of the make I get the error
>
> ...
> ld: Undefined symbols:
> __ZN10CNCSThread10GetCurrentEv
> __ZN10CNCSThread11EnableStatsEv
> __ZN10CNCSThread11GetPriorityEv
> __ZN10CNCSThread11IsSuspendedEv
> __ZN10CNCSThread11SetPriorityE17NCSThreadPriority
> __ZN10CNCSThread11ThreadYieldEv
> __ZN10CNCSThread12DisableStatsEv
> __ZN10CNCSThread3RunEv
> __ZN10CNCSThread4ExitEi
> __ZN10CNCSThread4StopEb
> __ZN10CNCSThread5GetIDEv
> __ZN10CNCSThread5SpawnEPvb
> __ZN10CNCSThread6ResumeEv
> __ZN10CNCSThread7SuspendEv
> __ZN10CNCSThread8GetStatsEv
> __ZN10CNCSThread8GetSysIDEv
> __ZN10CNCSThread9IsRunningEv
> __ZN10CNCSThread9TerminateEv
> __ZN9CNCSError15GetErrorMessageEPcz
> __ZN9CNCSErrorC1E8NCSErrorPciN7CNCSLog11NCSLogLevelEPKc
> __ZN9CNCSErrorC1ERKS_
> __ZN9CNCSErrorD1Ev
> __ZN9CNCSErroraSERKS_
> _NCSGetErrorText
> /usr/bin/libtool: internal link edit command failed
> make[1]: *** [libgdal.la] Error 1
> make: *** [check-lib] Error 2
>
>
> Does anybody have a clue what this could mean?
>
> I set the LD_LIBRARY_PATH and LD_INCLUDE_PATH to all directories
> where I think it was needed.
>
> Thanks for any help,
>
> Armin
> _______________________________________________
> Gdal-dev mailing list
> Gdal-dev at lists.maptools.org
> http://lists.maptools.org/mailman/listinfo/gdal-dev
-----
William Kyngesburye <kyngchaos at kyngchaos.com>
http://www.kyngchaos.com/
"Oh, look, I seem to have fallen down a deep, dark hole. Now what
does that remind me of? Ah, yes - life."
- Marvin
More information about the Gdal-dev
mailing list