Bug 349

Summary: [QT] fotowall warns iconv failure in QIconvCodec
Product: [Build System, Metadata & Runtime] Meta-yocto Reporter: Qing He <qing.he>
Component: meta-yoctoAssignee: Jonathan Liu <net147>
Status: RESOLVED FIXED QA Contact:
Severity: minor    
Priority: Low CC: jessica.zhang, jiajun.xu, ke.yu, kevin.tian, net147, poky.bs.watcher, poky.watcher, richard.purdie, sgw
Version: 0.9   
Target Milestone: 1.5 M2   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---

Description Qing He 2010-09-21 01:01:00 UTC
see also bug 280, bug 347, bug 347

this bug addresses the warning part of iconv failures.
Since it appears to be just warning, don't block bug 280

######
root@qemux86-64:~# DISPLAY=:0.0 fotowall
QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv failed for
BOM: Bad file descriptor
QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open
failed
QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
Illegal instruction
######
Comment 1 Paul Eggleton 2011-08-17 16:43:02 UTC
Honestly I have looked at this and the message itself doesn't really mean anything based on all of the searching I have done. If we are getting actual i18n failures that is a different story. My opinion is that we should mark this as WONTFIX.
Comment 2 Paul Eggleton 2012-03-12 12:28:31 UTC
Resolving as WONTFIX as above. If we get actual i18n issues with Qt then we can reopen or file a new bug as appropriate.
Comment 3 Jonathan Liu 2013-06-19 06:48:53 UTC
Installing eglibc-gconv-utf-16 makes the warning disappear.
Comment 4 Richard Purdie 2013-06-19 08:00:58 UTC
Based on that should we add am RDEPENDS to fotowall?
Comment 5 Paul Eggleton 2013-06-19 08:15:14 UTC
If this dependency is independent of locale and is added conditional on using (e)glibc, then yes; I'd use RRECOMMENDS though since it's not a hard dependency.
Comment 6 Jonathan Liu 2013-06-19 08:21:27 UTC
This happens for every Qt application. For example, it happens for this minimal Qt application:
#include <QCoreApplication>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    return 0;
}
Comment 7 Jonathan Liu 2013-06-19 08:38:50 UTC
Qt's QString class stores strings internally using UTF-16 encoding. This affects conversions between the system's local 8-bit representation and QString's UTF-16 encoding.

The example, the following functions would be affected:
QString::fromLocal8Bit(...)
QString::toLocal8Bit(...)

It would use Latin-1 encoding instead of the system's encoding for conversion.
Comment 8 Paul Eggleton 2013-06-19 09:02:49 UTC
Right, this makes sense. In which case I guess the easiest thing would be to add the dependency to the qtcore package itself in qt4.inc.