Discussion:
apk continuous builds die
Miika Turkia
2018-10-27 08:50:49 UTC
Permalink
The continuous builds seem to be dying on my Nexus 7 tablet on startup.
logcat shows the following:
---8<---
10-27 11:47:12.440 8343 8360 D
/workspace/subsurface/qt-models/messagehandlermodel.cpp: INFO:
QQmlApplicationEngine failed to load component
10-27 11:47:12.441 8343 8360 D
/workspace/subsurface/qt-models/messagehandlermodel.cpp: INFO:
qrc:/qml/main.qml:621 Type MapPage unavailable
10-27 11:47:12.441 8343 8360 D
/workspace/subsurface/qt-models/messagehandlermodel.cpp:
qrc:/qml/MapPage.qml:3 module "QtPositioning" plugin
"declarative_positioning" not found
10-27 11:47:12.441 8343 8360 D
/workspace/subsurface/qt-models/messagehandlermodel.cpp:
10-27 11:47:12.486 649 1723 I WindowState: WIN DEATH: Window{793cf83 u0
org.subsurfacedivelog.mobile/org.subsurfacedivelog.mobile.SubsurfaceMobileActivity}
10-27 11:47:12.576 649 1314 I ActivityManager: Process
org.subsurfacedivelog.mobile (pid 8343) has died
10-27 11:47:12.576 649 1314 W ActivityManager: Force removing
ActivityRecord{6f53882 u0
org.subsurfacedivelog.mobile/.SubsurfaceMobileActivity t3076}: app died, no
saved state
---8<---

Is something missing from the APK or is Android 6.0.1 too old?

miika
Dirk Hohndel
2018-10-27 13:54:58 UTC
Permalink
Post by Miika Turkia
---8<---
10-27 11:47:12.440 8343 8360 D /workspace/subsurface/qt-models/messagehandlermodel.cpp: INFO: QQmlApplicationEngine failed to load component
10-27 11:47:12.441 8343 8360 D /workspace/subsurface/qt-models/messagehandlermodel.cpp: INFO: qrc:/qml/main.qml:621 Type MapPage unavailable
10-27 11:47:12.441 8343 8360 D /workspace/subsurface/qt-models/messagehandlermodel.cpp: qrc:/qml/MapPage.qml:3 module "QtPositioning" plugin "declarative_positioning" not found
10-27 11:47:12.486 649 1723 I WindowState: WIN DEATH: Window{793cf83 u0 org.subsurfacedivelog.mobile/org.subsurfacedivelog.mobile.SubsurfaceMobileActivity}
10-27 11:47:12.576 649 1314 I ActivityManager: Process org.subsurfacedivelog.mobile (pid 8343) has died
10-27 11:47:12.576 649 1314 W ActivityManager: Force removing ActivityRecord{6f53882 u0 org.subsurfacedivelog.mobile/.SubsurfaceMobileActivity t3076}: app died, no saved state
---8<---
Is something missing from the APK or is Android 6.0.1 too old?
Not at all - this runs all the way back to 4.4 IIRC.

This looks suspiciously like the bug that I fixed by fixing qt-android-cmake a few months ago.
We actually switched to our branch of that project (and I realize that we should switch back as my fix was merged upstream - but nothing has happened since in upstream, so it doesn't really matter).
https://github.com/LaurentGomila/qt-android-cmake/commit/17acb315af2d07571f0912440b4938799fc25c7d <https://github.com/LaurentGomila/qt-android-cmake/commit/17acb315af2d07571f0912440b4938799fc25c7d>So the question becomes "why does this work if I build locally, but not when built on Travis".

You can see in the Travis log:
-- Skipping /workspace/Qt/5.11.1/android_armv7/qml/QtPositioning/libdeclarative_positioning.so. It has unmet dependencies: lib/libQt5PositioningQuick.so.

So clearly on Travis the problem isn't fixed. But on my system I also build against Qt-5.11.1

The next step would be to NOT remove the '-verbose' flag and see what we can find in the output, I guess...

I hate having to re-fix bugs that I fixed already (and have forgotten how I fixed them).

/D
Dirk Hohndel
2018-10-27 14:31:18 UTC
Permalink
Post by Dirk Hohndel
Post by Miika Turkia
---8<---
10-27 11:47:12.440 8343 8360 D /workspace/subsurface/qt-models/messagehandlermodel.cpp: INFO: QQmlApplicationEngine failed to load component
10-27 11:47:12.441 8343 8360 D /workspace/subsurface/qt-models/messagehandlermodel.cpp: INFO: qrc:/qml/main.qml:621 Type MapPage unavailable
10-27 11:47:12.441 8343 8360 D /workspace/subsurface/qt-models/messagehandlermodel.cpp: qrc:/qml/MapPage.qml:3 module "QtPositioning" plugin "declarative_positioning" not found
10-27 11:47:12.486 649 1723 I WindowState: WIN DEATH: Window{793cf83 u0 org.subsurfacedivelog.mobile/org.subsurfacedivelog.mobile.SubsurfaceMobileActivity}
10-27 11:47:12.576 649 1314 I ActivityManager: Process org.subsurfacedivelog.mobile (pid 8343) has died
10-27 11:47:12.576 649 1314 W ActivityManager: Force removing ActivityRecord{6f53882 u0 org.subsurfacedivelog.mobile/.SubsurfaceMobileActivity t3076}: app died, no saved state
---8<---
Is something missing from the APK or is Android 6.0.1 too old?
Not at all - this runs all the way back to 4.4 IIRC.
This looks suspiciously like the bug that I fixed by fixing qt-android-cmake a few months ago.
We actually switched to our branch of that project (and I realize that we should switch back as my fix was merged upstream - but nothing has happened since in upstream, so it doesn't really matter).
https://github.com/LaurentGomila/qt-android-cmake/commit/17acb315af2d07571f0912440b4938799fc25c7d <https://github.com/LaurentGomila/qt-android-cmake/commit/17acb315af2d07571f0912440b4938799fc25c7d>So the question becomes "why does this work if I build locally, but not when built on Travis".
-- Skipping /workspace/Qt/5.11.1/android_armv7/qml/QtPositioning/libdeclarative_positioning.so. It has unmet dependencies: lib/libQt5PositioningQuick.so.
So clearly on Travis the problem isn't fixed. But on my system I also build against Qt-5.11.1
The next step would be to NOT remove the '-verbose' flag and see what we can find in the output, I guess...
I hate having to re-fix bugs that I fixed already (and have forgotten how I fixed them).
Hrmpvf. Heisenberg? I pushed a branch to see all the output of the dependency handling - and from the log it looks like that just worked.

Could you test https://github.com/Subsurface-divelog/subsurface/releases/download/continuous-androidTravisTest/subsurface-mobile-build-arm-debug.apk ?

/D
Miika Turkia
2018-10-27 14:35:30 UTC
Permalink
Post by Miika Turkia
The continuous builds seem to be dying on my Nexus 7 tablet on startup.
---8<---
10-27 11:47:12.440 8343 8360 D
QQmlApplicationEngine failed to load component
10-27 11:47:12.441 8343 8360 D
qrc:/qml/main.qml:621 Type MapPage unavailable
10-27 11:47:12.441 8343 8360 D
qrc:/qml/MapPage.qml:3 module "QtPositioning" plugin
"declarative_positioning" not found
10-27 11:47:12.441 8343 8360 D
10-27 11:47:12.486 649 1723 I WindowState: WIN DEATH: Window{793cf83 u0
org.subsurfacedivelog.mobile/org.subsurfacedivelog.mobile.SubsurfaceMobileActivity}
10-27 11:47:12.576 649 1314 I ActivityManager: Process
org.subsurfacedivelog.mobile (pid 8343) has died
10-27 11:47:12.576 649 1314 W ActivityManager: Force removing
ActivityRecord{6f53882 u0
org.subsurfacedivelog.mobile/.SubsurfaceMobileActivity t3076}: app died, no
saved state
---8<---
Is something missing from the APK or is Android 6.0.1 too old?
Not at all - this runs all the way back to 4.4 IIRC.
This looks suspiciously like the bug that I fixed by fixing
qt-android-cmake a few months ago.
We actually switched to our branch of that project (and I realize that we
should switch back as my fix was merged upstream - but nothing has happened
since in upstream, so it doesn't really matter).
https://github.com/LaurentGomila/qt-android-cmake/commit/17acb315af2d07571f0912440b4938799fc25c7d
So the question becomes "why does this work if I build locally, but not
when built on Travis".
-- Skipping
/workspace/Qt/5.11.1/android_armv7/qml/QtPositioning/libdeclarative_positioning.so.
It has unmet dependencies: lib/libQt5PositioningQuick.so.
So clearly on Travis the problem isn't fixed. But on my system I also
build against Qt-5.11.1
The next step would be to NOT remove the '-verbose' flag and see what we
can find in the output, I guess...
I hate having to re-fix bugs that I fixed already (and have forgotten how I fixed them).
Hrmpvf. Heisenberg? I pushed a branch to see all the output of the
dependency handling - and from the log it looks like that just worked.
Could you test
https://github.com/Subsurface-divelog/subsurface/releases/download/continuous-androidTravisTest/subsurface-mobile-build-arm-debug.apk
?
Seems to be working. (Asks for cloud credentials, so at least didn't
prematurely end on startup)

miika
Dirk Hohndel
2018-10-27 14:37:50 UTC
Permalink
Could you test https://github.com/Subsurface-divelog/subsurface/releases/download/continuous-androidTravisTest/subsurface-mobile-build-arm-debug.apk <https://github.com/Subsurface-divelog/subsurface/releases/download/continuous-androidTravisTest/subsurface-mobile-build-arm-debug.apk> ?
Seems to be working. (Asks for cloud credentials, so at least didn't prematurely end on startup)
I don't really want the output to be verbose, so let me push the small change to use the official upstream again.
Let me know if things fail again on master and I'll see if there is a reason why it works with -verbose and doesn't without, but for now I just hope this was some fluke.

/D

Loading...