Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Native Development

Reply
Highlighted
Contributor
Posts: 44
Registered: ‎01-06-2012
My Device: PlayBook
My Carrier: Orange

BBM (with cascades/QT)

I would like to use the BBM API in my full screen, OpenGL ES, gaming application which does not use Cascades or QT. I have implemented the BBM registration calls, which resulted in linking errors for the BBM API functions I call, so I tried linking against bbmsp which does resolve these linking errors, however it then creates its own linker errors for a loads of stuff inside QT. I have dumped the list of symbols it fails to link at the bottom fo this post. For a quick workaround, I tried linking against QtCore, which does resolve all linking errors, however my application no longer runs (it closes straight away, the debugger doesn't get as far as my main entrance point). I suspect mixing QT into my application is causing problems as QT is probably trying to take over the main loop which is not something I want (having to link against QT surely shouldn't be the right solution here)?

 

Am I missing something here? Is there a different library that I should link against instead?

 

Steve

 

55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QListData::realloc(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QRegExp::exactMatch(QString const&) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::QVariant(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::indexOf(QString const&, int, Qt::CaseSensitivity) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `qt_message_output(QtMsgType, char const*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QListData::erase(void**)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QHashData::detach_helper2(void (*)(QHashData::Node*, void*), void (*)(QHashData::Node*), int, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QListData::remove(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMetaObject::activate(QObject*, QMetaObject const*, int, void**)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray::toHex() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::eventFilter(QObject*, QEvent*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::childEvent(QChildEvent*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray::realloc(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QtSharedPointer::ExternalRefCountData::setQObjectShared(QObject const*, bool)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::arg(long long, int, int, QChar const&) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QHashData::allocateNode(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::disconnectNotify(char const*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::qt_metacall(QMetaObject::Call, int, void**)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::QVariant(QVariant::Type)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::toInt(bool*) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QRegExp::isValid() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QTime::currentTime()'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QRegExp::~QRegExp()'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::trimmed() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant:Smiley Surprisedperator=(QVariant const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QLinkedListData::shared_null'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QTime::msec() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::lastIndexOf(QChar, int, Qt::CaseSensitivity) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::toInt(bool*, int) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::QVariant(QVariant const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QCoreApplication::self'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::disconnect(QObject const*, char const*, QObject const*, char const*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `typeinfo for QObject'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::cmp(QVariant const&) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QListData::detach(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QThreadStorageData::get() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::shared_null'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray::fromBase64(QByteArray const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QTextStream::QTextStream(QString*, QFlags<QIODevice:Smiley SurprisedpenModeFlag>)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QHashData&colon;:freeNode(void*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QTextStream:Smiley Surprisedperator<<(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::fromUtf8(char const*, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray::toBase64() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::~QVariant()'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString:Smiley Surprisedperator<(QString const&) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::count(QChar, Qt::CaseSensitivity) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::toLocal8Bit() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::fromAscii_helper(char const*, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMetaObject::addGuard(QObject**)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QChar::QChar(char)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::customEvent(QEvent*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QThreadStorageData&colon;:QThreadStorageData(void (*)(void*))'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::arg(QString const&, int, QChar const&) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QCoreApplication::QCoreApplication(int&, char**, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMapData&colon;:shared_null'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMapData&colon;:createData(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::timerEvent(QTimerEvent*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QTextStream::~QTextStream()'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QThreadStorageData&colon;:~QThreadStorageData()'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QHashData&colon;:rehash(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QListData&colon;:shared_null'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString:Smiley Surprisedperator==(QString const&) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QHashData&colon;:nextNode(QHashData&colon;:Node*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::mid(int, int) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::staticMetaObject'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QListData&colon;:insert(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::number(long long, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::userType() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QRegExp::setPatternSyntax(QRegExp:Smiley TongueatternSyntax)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::QVariant(int, void const*, unsigned int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::metaObject() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMapData&colon;:node_create(QMapData&colon;:Node**, int, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QTextStream:Smiley Surprisedperator<<(char)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::connectNotify(char const*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMapData&colon;:node_delete(QMapData&colon;:Node**, int, QMapData&colon;:Node*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QCoreApplication::sendPostedEvents(QObject*, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray::mid(int, int) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray::append(QByteArray const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `qFree(void*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::append(QString const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `qt_assert(char const*, char const*, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString:Smiley Surprisedperator=(QString const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QRegExp:Smiley Surprisedperator=(QRegExp const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QRegExp::setCaseSensitivity(Qt::CaseSensitivity)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QHashData&colon;:free_helper(void (*)(QHashData&colon;:Node*))'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::handler'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::QObject(QObject*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::toAscii() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QVariant::constData() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QHashData&colon;:shared_null'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::qt_metacast(char const*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray:Smiley Surprisedperator=(QByteArray const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `qt_assert_x(char const*, char const*, char const*, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::setParent(QObject*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMetaType::registerType(char const*, void (*)(void*), void* (*)(void const*))'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::number(unsigned int, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `qHash(QString const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString:Smiley Surprisedperator==(QLatin1String const&) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QTextStream:Smiley Surprisedperator<<(QString const&)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QCoreApplication::hasPendingEvents()'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMetaObject::removeGuard(QObject**)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QCryptographicHash::hash(QByteArray const&, QCryptographicHash::Algorithm)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMetaObject::changeGuard(QObject**, QObject*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::fromAscii(char const*, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::~QObject()'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::append(QChar)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QRegExp::QRegExp(QString const&, Qt::CaseSensitivity, QRegExp:Smiley TongueatternSyntax)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray::shared_null'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QMapData&colon;:continueFreeData(int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::arg(unsigned long long, int, int, QChar const&) const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QChar::fromAscii(char)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::event(QEvent*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QByteArray::QByteArray(char const*, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QListData&colon;:detach_grow(int*, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QListData&colon;:append()'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::toUtf8() const'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::codecForCStrings'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QThreadStorageData&colon;:set(void*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::number(int, int)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QString::free(QString:Smiley Very Happyata*)'
55> C:/bbndk/10.1.0.1020/target_10_1_0_1020/qnx6/armle-v7/usr/lib/libbbmsp.so: undefined reference to `QObject::QObject(QObject*)'

Developer
Posts: 1,068
Registered: ‎11-24-2011
My Device: PlayBook
My Carrier: x

Re: BBM (with cascades/QT)

Unfortunately linking with bbmsp does need to include linking with QtCore. It used to work perfectly well as I use it in my app but it seems to be broken now. On the latest software 10.1.0.1720 my app just does not start any longer, will need to investigate today later -((((

*so frustrating when software update breaks  your app*

Contributor
Posts: 44
Registered: ‎01-06-2012
My Device: PlayBook
My Carrier: Orange

Re: BBM (with cascades/QT)

So, I debugged this a bit further, although my application closed straight away (linking against QtCore), I noticed a log file which stated that it failed to open libQtCore.so.4 so I copied this file into a directory in my BAR which is in the lib search path (you can specify via -Wl,--rpath=libsDir) and this then allowed my application to launch.

 

Everything seemed to be going pretty well, however decoding the BBM profile image takes about 2 minutes, during which time the application hangs (even though the decode is happening on another thread), and once the decode has finally finished, the main thread dies on the next GLES call to get last error (it doesn't return a bad error, the actual GL function crashes).

 

Not sure where to go from here, initially I tried using img_load (which takes 2 minutes and then breaks GL), then instead I tried manually getting a codec myself (I find a single codec that should work), but then img_decode_validate does the same thing (hangs for 2 minutes, breaks GL) although in both cases the image does appear to get decoded properly.

 

Don't suppose you have seen this sort of weirdness? I should probably create anothre thread for it I guess..

Developer
Posts: 1,068
Registered: ‎11-24-2011
My Device: PlayBook
My Carrier: x

Re: BBM (with cascades/QT)

I haven't tried to load BBM images in my OpenGL app. I'd start new thread on this.

Can you please check what version of QtCore.so we have now on the device? It should be in /usr/lib/qt4/lib

Contributor
Posts: 44
Registered: ‎01-06-2012
My Device: PlayBook
My Carrier: Orange

Re: BBM (with cascades/QT)

libQtCore.so

libQtCore.so.4

libQtCore.so.4.8

libQtCore.so.4.8.5

 

So version 4.8.5 would probably be the answer, which, interestingly enough is the same version that is in the NDK I am using, and the same version I am adding into the BAR file. No sure why it doesn't/isn't able to just use the version on the system?

 

Contributor
Posts: 44
Registered: ‎01-06-2012
My Device: PlayBook
My Carrier: Orange

Re: BBM (with cascades/QT)

For what it is worth, I am currently using NDK 10.1.0.1020 but will upgrade to latest at some point.

Developer
Posts: 1,068
Registered: ‎11-24-2011
My Device: PlayBook
My Carrier: x

Re: BBM (with cascades/QT)

Did you modify your bar.xml file to something like this?

<!-- Ensure that shared libraries in the package are found at run-time. -->
<env var="LD_LIBRARY_PATH" value="/usr/lib/qt4/lib"/>

Developer
Posts: 1,068
Registered: ‎11-24-2011
My Device: PlayBook
My Carrier: x

Re: BBM (with cascades/QT)

My app crash is not related to your problem. Some folder names under /usr/fonts/font_repository/ were renamed in 10.1.0.1720 that is why my app started to crash.

Contributor
Posts: 44
Registered: ‎01-06-2012
My Device: PlayBook
My Carrier: Orange

Re: BBM (with cascades/QT)

I did try modifying LD_LIBRARY_PATH to include the qt4 libs directory, and also tried adding it to my rlink path, however neither option seemed to resolve the issue for me (which is obviously weird, and maybe something I am getting wrong somewhere along the lines). However having a copy of QtCore in the libs directory along side my executable, with the libs directory in my rpath does allow it to function at least. Really I need to find out how to run GDB in a mode that will display the attempts it makes when searching for a shared library.

 

Also, thanks for confirming your problem isn't related to mine.

 

 

Developer
Posts: 1,068
Registered: ‎11-24-2011
My Device: PlayBook
My Carrier: x

Re: BBM (with cascades/QT)

That's weird. You should not include libQtCore.so within you .bar file.

All I do is just setting up LD_LIBRARY_PATH, try removing everything else that can mess up library search (like rpath)...