Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-30782

QtC pulls wrong arch debugging files from Android device on first run with qmake

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Not Evaluated
    • None
    • Qt Creator 13.0.0
    • Android Support
    • None
    • 64-bit Android device
    • Linux/X11, macOS

    Description

      QtC pulls some files from the target Android device for debugging purposes. These are app_process32 (or just app_process), linker and lib/libc.so for 32-bit devices, and app_process64, linker64 and lib64/libc.so for 64-bit devices. This is done as part of the androiddeployqt execution step.

      This works like a dream when using CMake, but when using the "old" qmake files from our examples one can run into a problem.

      Preconditions:

      • Qt for Android
      • QtC setup with Android toolchain
      • 64-bit (arm64 or x86_64) Android AVD or device

      Steps to reproduce:

      1. Open QtC (tried 12.0.0 -> 13.0.1)
      2. Open Android-suitable example using the .pro file (e.g. demos/calqlatr)
      3. Configure 64-bit kit matching the target device
      4. Click "Run"

      The expectation is that there are no errors, but instead an attempt is made to download the 32-bit files from the device. The .apk has been built successfully and ignoring the errors will run the example correctly on the device, so that is not a major problem.

      If one re-runs at this point, the correct files will be downloaded from the target device. This seems to suggest that the step is trying to get some information from the build directory which doesn't exist at the moment of the first run and is there at the second run. Also, if one does configure -> BUILD -> run everything works fine.

      Our (QtAA) RTA tests still test example building with qmake, but they only build and handle the deployment separately, so this issue couldn't be seen clearly there.

      First run:

      13:24:45: Pulling files necessary for debugging.
      13:24:45: Package deploy: Running command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/bin/app_process /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/app_process".
      13:24:45: Package deploy: Running command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/bin/app_process32 /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/app_process".
      13:24:45: The command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/bin/app_process32 /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/app_process" terminated with exit code 1.
      13:24:45: Package deploy: Running command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/bin/linker /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/linker".
      13:24:45: The command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/bin/linker /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/linker" terminated with exit code 1.
      13:24:45: Package deploy: Failed to pull "/system/bin/linker" to "/Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/linker".
      13:24:45: Package deploy: Running command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/lib/libc.so /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/libc.so".
      13:24:45: The command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/lib/libc.so /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/libc.so" terminated with exit code 1.
      13:24:45: Package deploy: Failed to pull "/system/lib/libc.so" to "/Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/libc.so".

      And subsequently:

      13:29:43: Pulling files necessary for debugging.
      13:29:43: Package deploy: Running command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/bin/app_process64 /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/app_process".
      13:29:43: Package deploy: Running command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/bin/linker64 /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/linker64".
      13:29:43: Package deploy: Running command "/Users/ollivuolteenaho/Library/Android/sdk/platform-tools/adb -s emulator-5554 pull /system/lib64/libc.so /Users/ollivuolteenaho/Qt/Examples/Qt-6.7.1/demos/coffee/build/Android_Qt_6_7_1_Clang_arm64_v8a-Debug/android-app-process/libc.so".

      Messy summary, sorry. And qmake in 2024, sorry.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            portale Alessandro Portale
            olvuolte Olli Vuolteenaho
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes