[Releasing] ICU support in QtCore and QtWebKit

Thiago Macieira thiago.macieira at intel.com
Wed Sep 12 12:42:55 CEST 2012


On quarta-feira, 12 de setembro de 2012 10.26.35, morten.sorvig at nokia.com 
wrote:
> > But I might have jumped the gun. Are the ICU libraries present in the SDKs
> > that you can select for building on Mac OS X? That is, if I select 10.6 as
> > the minimum version, is there an ICU library that is selected along with
> > it? Or do the Mac OS X SDKs only apply to the CoreFoundation framework
> > and what's above it?
> 
> It is included with the SDK. However, Qt 4 supports building with the latest
> SDK and deploying back to earlier versions (using weak linking). I don't
> want to break this feature in Qt 5 because of the ICU dependency.  

So we can just link to the ICU that is present in the SDK of that particular 
version, can't we?

> I think we have two options:
> 
> a) Always configure with -icu-qt on Mac

Requires deploying the libs into the apps' bundles.

> b) Make Qt work with the ICUs on 10.6, 10.7, 10.8, 10.x. [1] has some
> insight there. Perhaps the incompatibilities are manageable on OS X? Can it
> be relied on to always be there in future Mac OS versions?

The incompatibilities are manageable, for sure. Can you check if  
/usr/library/libicucore.dylib contains versioned C symbols? For example, here 
they are versioned:

$ nm -D /lib64/libicuuc.so | grep ucnv_close  
00000035de655740 T ucnv_close_48

If the library on Mac is not versioned, as the blog post you mentioned 
indicates, then we can simply link to it and be done with it.

If the library is versioned, then either Solutions 1 or 2 that I posted will 
work. That's easy to implement for QtCore, but maybe not so much for QtWebKit.

Whether we can rely on it always being there, that's something you need to 
tell me. But in any case, we can always say that future OSX versions aren't 
supported until we get our hands on them and test.


-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center
     Intel Sweden AB - Registration Number: 556189-6027
     Knarrarnäsgatan 15, 164 40 Kista, Stockholm, Sweden
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.qt-project.org/pipermail/releasing/attachments/20120912/0e4b0ae6/attachment.sig>


More information about the Releasing mailing list