win32 build stops with linker error

Thiago Macieira thiago at
Wed Feb 15 15:10:49 CET 2006

David Faure wrote:
>> But then you should use KDE_EXPORT instead!
>For unix KIO_EXPORT or KDE_EXPORT is the same, so I'll trust you to use
> whichever works for the Windows side, I'm just surprised that all libs
> reading that .h would think that they need to export the symbol
> again...

They're weak symbols. The dynamic linker chooses one copy (any of them) of 
the symbol and that's it.

And about templates, they won't be exported on ELF platforms unless used 
-- and then only those symbols that were used.

For instance, exports a total of 0 QMap symbols.

$ nm -DC lib/ | grep QMap
000b3d2a T QSettingsPrivate::processChild(QString, 
QSettingsPrivate::ChildSpec, QMap<QString, QString>&)
000d3d58 T QAbstractItemModel::setItemData(QModelIndex const&, QMap<int, 
QVariant> const&)
0005d7a8 T QMapData::createData()
0005d88e T QMapData::node_create(QMapData::Node**, int)
0005d9f6 T QMapData::node_delete(QMapData::Node**, int, QMapData::Node*)
0018bbc0 D QMapData::shared_null
0005d828 T QMapData::continueFreeData(int)
00100b9a T QVariant::QVariant(QMap<QString, QVariant> const&)
00100b62 T QVariant::QVariant(QMap<QString, QVariant> const&)
000b672a T QSettings::registerFormat(QString const&, bool (*)(QIODevice&, 
QMap<QString, QVariant>&), bool (*)(QIODevice&, QMap<QString, QVariant> 
const&), Qt::CaseSensitivity)

  Thiago Macieira  -  thiago (AT) - thiago (AT)
    PGP/GPG: 0x6EF45358; fingerprint:
    E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358

5. Swa he géanhwearf tó timbran, and hwonne he cóm, lá! Unix cwæð "Hello, 
World". Ǽfre ǽghwilc wæs glæd and seo woruld wæs fréo.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : 

More information about the Kde-buildsystem mailing list