[gdal-dev] Win build issues
Even Rouault
even.rouault at mines-paris.org
Mon Apr 23 14:46:45 EDT 2012
Le lundi 23 avril 2012 19:16:54, Joaquim Luis a écrit :
> > Indeed that solved the linking issue, but while I am at this I have to
> > refer to still another problem.
> > For quite some time that build the mrsid driver (Geo_DSDK-7.0.0.2167)
> > but now it errors with.
> >
> > However, shouldn't it be trying to link against lti_dsdk_dll.lib
> > instead of lti_dsdk.lib?
> > Again it seams be a 'static' thing that is coming in the way.
> >
> >
> > lti_dsdk.lib(MrSIDEncrypt.obj) : error LNK2019: unresolved external
> > symbol "__declspec(dllimport) public: class
> > std::basic_string<char,struct std::char_traits<char>,class
> > std::allocator<char> >::const_iterator __thiscall
> > std::basic_string<char,struct std::char_traits<char>,class
> > std::allocator<char> >::end(void)const "
> > (__imp_?end@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@
> > QBE?AVconst_iterator at 12@XZ) referenced in function "public: static bool
> > __cdecl
> > LizardTech::MrSIDEncrypt::keyMatchesLock(char const *,class
> > LizardTech::Encryption const&)"
> > (?keyMatchesLock at MrSIDEncrypt@LizardTech@@SA_NPBDABVEncryption at 2@@Z)
>
> For the record, after adding
> MRSID_RDLLBUILD = YES
> to nmake.opt it built fine again
frmts/mrsid/nmake.opt says that :
# MRSID_RDLLBUILD=(YES|NO) - Some versions of the MrSID SDK shipped with
# both static and dynamic libraries. Use this macro to choose between
# static and dynamic linkage for the Raster SDK, if both are available.
# By default, your SDK will be inspected and the appropriate library
# used, with a preference for the DLL if both are found.
So you shouldn't have to explicitely set it. CC'ing Kirk that might have some
clues of why it was necessary for you to define that.
More information about the gdal-dev
mailing list