Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-138376

Android Qt Multimedia libavformat.so load library issue

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Not Evaluated Not Evaluated
    • None
    • 6.10.0 Beta1
    • Multimedia
    • None
    • Android 12
    • Android

      just compiled android app using Qt 6.10.0 beta1 (runtime from qt maintainance tool), target abi = arm64_v8a, when runs it, I get
      E/AndroidRuntime: FATAL EXCEPTION: qtMainLoopThread
      E/AndroidRuntime: Process: org.qtproject.example, PID: 5505
      E/AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: library "libssl_3.so" not found: needed by /data/app/~~Utwfk3wLA4v4PrzCvDDlxA==/org.qtproject.example-mTLidF9k1Oosv8jFEMEwDA==/lib/arm64/libavformat.so in namespace classloader-namespace
      E/AndroidRuntime: at java.lang.Runtime.load0(Runtime.java:929)
      E/AndroidRuntime: at java.lang.System.load(System.java:1620)
      E/AndroidRuntime: at org.qtproject.qt.android.QtLoader.loadLibraryHelper(QtLoader.java:480)
      E/AndroidRuntime: at org.qtproject.qt.android.QtLoader.lambda$loadLibraries$1$org-qtproject-qt-android-QtLoader(QtLoader.java:562)
      E/AndroidRuntime: at org.qtproject.qt.android.QtLoader$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
      E/AndroidRuntime: at org.qtproject.qt.android.QtThread.lambda$run$0(QtThread.java:57)
      E/AndroidRuntime: at org.qtproject.qt.android.QtThread$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
      E/AndroidRuntime: at org.qtproject.qt.android.QtThread$1.run(QtThread.java:25)
      E/AndroidRuntime: at java.lang.Thread.run(Thread.java:920)
       

       

      after search and add necessary libssl support according to document "Adding OpenSSL Support for Android", i get
      E/AndroidRuntime: FATAL EXCEPTION: qtMainLoopThread
      E/AndroidRuntime: Process: org.qtproject.example, PID: 6345
      E/AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "BN_free" referenced by "/data/app/~~oFxPW0VTD0rXp4d9kSGZmg==/org.qtproject.example-ChP3K93e_p3T166CvLZJeQ==/lib/arm64/libavformat.so"...
      E/AndroidRuntime: at java.lang.Runtime.load0(Runtime.java:929)
      E/AndroidRuntime: at java.lang.System.load(System.java:1620)
      E/AndroidRuntime: at org.qtproject.qt.android.QtLoader.loadLibraryHelper(QtLoader.java:480)
      E/AndroidRuntime: at org.qtproject.qt.android.QtLoader.lambda$loadLibraries$1$org-qtproject-qt-android-QtLoader(QtLoader.java:562)
      E/AndroidRuntime: at org.qtproject.qt.android.QtLoader$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
      E/AndroidRuntime: at org.qtproject.qt.android.QtThread.lambda$run$0(QtThread.java:57)
      E/AndroidRuntime: at org.qtproject.qt.android.QtThread$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
      E/AndroidRuntime: at org.qtproject.qt.android.QtThread$1.run(QtThread.java:25)
      E/AndroidRuntime: at java.lang.Thread.run(Thread.java:920)
       

      ablation study

      cannot reproduce when using Qt 6.8.1

      cannot reproduce when using Qt 6.10.0 beta1 target abi = x86_64 with android emulator

       

      both environment above does not need to add extra openssl support to CMakeLists.txt

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

            qtmultimediateam Qt Multimedia Team
            mike_scarlet Mike Scarlet
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes