I’m currently developing an app in my free time. I have always tested it with the emulator so far, but now I’ve figured I could run it on my real phone (Sony Xperia 10 III) so I don’t need the inconvenient emulator.
The app works perfectly fine in the emulator, but when I try to run it on my phone, it complains about missing libraries and doesn’t show any GUI:
library "libui_compat_layer.so" not found
library "libutils.so" not found
library "libcutils.so" not found
library "libhardware.so" not found
library "android.hardware.graphics.mapper@2.0.so" not found
library "android.hardware.graphics.mapper@2.1.so" not found
library "android.hardware.graphics.mapper@3.0.so" not found
library "android.hardware.graphics.mapper@4.0.so" not found
library "libc++.so" not found
library "libhidlbase.so" not found
library "libgralloctypes.so" not found
library "android.hardware.graphics.common@1.2.so" not found
library "libion.so" not found
library "libz.so" not found
library "libhidlmemory.so" not found
library "android.hidl.memory@1.0.so" not found
library "vendor.qti.qspmhal@1.0.so" not found
Any ideas what the problem could be? Thanks in advance!
library “libutils.so” not found
library “libdmabufheap.so” not found
library “libbase.so” not found
library “libz.so” not found
library “libcutils.so” not found
library “android.hardware.graphics.mapper@4.0.so” not found
library “libgralloctypes.so” not found
library “libhidlbase.so” not found
library “libhardware.so” not found
library “libc++.so” not found
[C2, 5.0.0.72, openrepos, AAS, SDK on VirtualBox)
Why is there a diff? Why so many libs are missing?
Emulator vs. Devise: my cents:
Running your app inside the emulator means: no Sailjail. Missing rights for Sailjail creates no warnings. Try with enough rights (→desktop file) [edit:] Not tested Sailfjail on the emulator really. But if you start the app with a SDK call Sailjail is not active.. [/edit]
The emulator is pure SFOS. If you have openrepos, chum, AAS on your device maybe there are some additional libs installed or some libs are newer as in SFOS.
If you use the SDK: Use “Deploy as rpm package”.
Insert enough “console.log” to find the bad program line.
I would not suspect Sailjal because running the app from terminal and seeing those missing libraries means that Sailjail is not affecting the app. Sailjail is only effective when the app is started from the app grid.
libc++.so indicates that you link your application against llvm standard c++ library during compile time. But you should link your app with gnu std lib. You should check your cmake config and cmake arguments…
I have this config in my .desktop-file (because right now, the app doesn’t need any rights I could think of)
[X-Sailjail]
# Replace with your organization as a reverse domain name
OrganizationName=io.gitlab.dev_nis
# ApplicationName does not have to be identical to Name
ApplicationName=SilicaTasks
# Add the required permissions here
Permissions=
The SDK doesn’t use CMake, does it? I don’t see any CMakeLists.txt anywhere…
For me, if there is no [X-Sailjail] - secttion, then all permissions are granted. If the section is there you must provide the needed rights. But please test this. A good example for test is the FilePickerPage.
But as said the Sailfjail permissions are not needed when starting the app over the sdk. So for a test please restart the app on the device again.