[Interest] Problem location symbol on android

Lorne Sturtevant dragor at shaw.ca
Fri Apr 8 22:49:05 CEST 2016


On 04/08/2016 07:43 AM, Jason H wrote:
> I'm not sure of your exact issue, looks good to me. But do note:
> 1. You may need a QTPLUGIN
> 2. The android dynamic linker is single-pass, one-way. All
> prerequisites must me loaded prior to the library containing depenencies.
>  
> But, given your logs I think it should be working. I've not used the
> XMLdirectly, only so far as for SVG. in which case I have:
> QT +=  svg xml 
> android|osx {
> 	QTPLUGIN += qsvg
> }
> HTH
1) QXml works without a plugin.  So that's not it
2) It looks like all of the prerequisites are loaded.  Here's loading
the QXml library:

D/dalvikvm(20264): Trying to load lib
/data/data/org.qtproject.example.test_mage/lib/libQt5Xml.so 0x2c665238

D/dalvikvm(20264): Added shared lib
/data/data/org.qtproject.example.test_mage/lib/libQt5Xml.so 0x2c665238


Everthing looks ok with that.  It's only later that the library is loaded:
E/dalvikvm(20264):
dlopen("/data/app-lib/org.qtproject.example.test_mage-2/libmage.so")
failed: dlopen failed: cannot locate symbol
"_ZN18QXmlDefaultHandlerC2Ev" referenced by "libmage.so"...


 

 
>
> Starting remote process.V/Zygote (20264): Switching descriptor 33 to
> /dev/null
>
> V/Zygote (20264): Switching descriptor 9 to /dev/null
>
> D/dalvikvm(20264): Late-enabling CheckJNI
>
> I/ActivityManager( 436): Start proc org.qtproject.example.test_mage
> for activity
> org.qtproject.example.test_mage/org.qtproject.qt5.android.bindings.QtActivity:
> pid=20264 uid=10109 gids={50109, 3003, 1028, 1015}
>
> D/ActivityThread(20264):
> handleBindApplication:org.qtproject.example.test_mage
>
> D/ActivityThread(20264): setTargetHeapUtilization:0.75
>
> D/ActivityThread(20264): setTargetHeapMinFree:524288
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/lib/libgnustl_shared.so
> 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/lib/libgnustl_shared.so
> 0x2c665238
>
> D/dalvikvm(20264): No JNI_OnLoad found in
> /data/data/org.qtproject.example.test_mage/lib/libgnustl_shared.so
> 0x2c665238, skipping init
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Core.so 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Core.so 0x2c665238
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Gui.so 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Gui.so 0x2c665238
>
> D/dalvikvm(20264): No JNI_OnLoad found in
> /data/data/org.qtproject.example.test_mage/lib/libQt5Gui.so
> 0x2c665238, skipping init
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Widgets.so 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Widgets.so 0x2c665238
>
> D/dalvikvm(20264): No JNI_OnLoad found in
> /data/data/org.qtproject.example.test_mage/lib/libQt5Widgets.so
> 0x2c665238, skipping init
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Xml.so 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Xml.so 0x2c665238
>
> D/dalvikvm(20264): No JNI_OnLoad found in
> /data/data/org.qtproject.example.test_mage/lib/libQt5Xml.so
> 0x2c665238, skipping init
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Concurrent.so
> 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Concurrent.so
> 0x2c665238
>
> D/dalvikvm(20264): No JNI_OnLoad found in
> /data/data/org.qtproject.example.test_mage/lib/libQt5Concurrent.so
> 0x2c665238, skipping init
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Network.so 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/lib/libQt5Network.so 0x2c665238
>
> D/dalvikvm(20264): No JNI_OnLoad found in
> /data/data/org.qtproject.example.test_mage/lib/libQt5Network.so
> 0x2c665238, skipping init
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/qt-reserved-files/plugins/platforms/android/libqtforandroid.so
> 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/qt-reserved-files/plugins/platforms/android/libqtforandroid.so
> 0x2c665238
>
> I/Qt (20264): qt start
>
> D/dalvikvm(20264): Trying to load lib
> /data/data/org.qtproject.example.test_mage/qt-reserved-files/plugins/bearer/libqandroidbearer.so
> 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/data/org.qtproject.example.test_mage/qt-reserved-files/plugins/bearer/libqandroidbearer.so
> 0x2c665238
>
> D/dalvikvm(20264): No JNI_OnLoad found in
> /data/data/org.qtproject.example.test_mage/qt-reserved-files/plugins/bearer/libqandroidbearer.so
> 0x2c665238, skipping init
>
> D/dalvikvm(20264): Trying to load lib
> /data/app-lib/org.qtproject.example.test_mage-2/libphysfs.so 0x2c665238
>
> D/dalvikvm(20264): Added shared lib
> /data/app-lib/org.qtproject.example.test_mage-2/libphysfs.so 0x2c665238
>
> D/dalvikvm(20264): No JNI_OnLoad found in
> /data/app-lib/org.qtproject.example.test_mage-2/libphysfs.so
> 0x2c665238, skipping init
>
> D/dalvikvm(20264): Trying to load lib
> /data/app-lib/org.qtproject.example.test_mage-2/libmage.so 0x2c665238
>
> E/dalvikvm(20264):
> dlopen("/data/app-lib/org.qtproject.example.test_mage-2/libmage.so")
> failed: dlopen failed: cannot locate symbol
> "_ZN18QXmlDefaultHandlerC2Ev" referenced by "libmage.so"...
>
>  
>
> The constructor for QXmlDefaultHandler is not found.  It looks like
> it's loading the libQt5Xml.so library fine though.  When I examine the
> library in the build directory, this is what I get:
>  $ objdump -T libQt5Xml.so | grep _ZN18QXmlDefaultHandlerC2Ev
> 000121b9 g    DF .text  00000038 _ZN18QXmlDefaultHandlerC2Ev
>
> The symbol is in the library, but I have no idea why it's not finding it.
>
> Any help with this would be greatly appreciated. 
> -- 
> Lorne Sturtevant
> Sum Ergo Cogito
> _______________________________________________ Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest


-- 
Lorne Sturtevant
Sum Ergo Cogito

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160408/251f6324/attachment.html>


More information about the Interest mailing list