[OE-core] [PATCH] icu: fix libicudata corruption on big endian system

Yi Zhao yi.zhao at windriver.com
Tue Dec 5 23:51:19 UTC 2017


I had sent V2 patch to fix this issue.


//Yi


在 2017年12月05日 19:44, Burton, Ross 写道:
> On 28 November 2017 at 06:13, Yi Zhao <yi.zhao at windriver.com 
> <mailto:yi.zhao at windriver.com>> wrote:
>
>     ICU library libicudata is created with a wrong endianness if the host
>     and target have different endianness. (e.g. build ICU for qemuppc on
>     x86-64 host)
>     See upstream bug report:
>     http://bugs.icu-project.org/trac/ticket/11758
>     <http://bugs.icu-project.org/trac/ticket/11758>
>
>     The discussion in oe-core mailing list:
>     https://www.mail-archive.com/openembedded-core@lists.openembedded.org/msg65155.html
>     <https://www.mail-archive.com/openembedded-core@lists.openembedded.org/msg65155.html>
>
>     The root cause is the native pkgdata can not generate correct icu data
>     for different endianness. By default, this data is built into the
>     shared
>     library libicudata that would cause it corrupt. But ICU also provides
>     additional options for loading the data. With option
>     --with-data-packaging=archive, ICU outputs a single icudt.dat file
>     which
>     can be loaded by the library.
>     See document: http://userguide.icu-project.org/icudata
>     <http://userguide.icu-project.org/icudata>
>
>     So for big endian system, we can use the separated data file which
>     re-generates by icupkg and set the correct ICU_DATA environment
>     variable
>     to make sure the library can load the data without problems.
>
>
> Fails on various builds on the AB:
>
> icupkg: unable to open input file 
> "TOPDIR/tmp/work/ppc7400-poky-linux/icu/60.1-r0/icu/source/data/in/icudt59l.dat" 
>
>
> http://errors.yoctoproject.org/Errors/Latest/?filter=%20icu:%20do_install&type=failure
>
> Ross

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20171206/4e57ea62/attachment-0002.html>


More information about the Openembedded-core mailing list