Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Update: Forum Guidelines & Code of Conduct


    Qt World Summit: Early-Bird Tickets

    Unsolved Get SIGABRT (signal 6) using QtWebEngineProcess in deployment

    QtWebEngine
    qtwebengineproc qtwebengine ubuntu 16.04 qt 5.10.0 deployment
    4
    8
    2725
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      bachir last edited by

      Hi,
      can anyone help me out with this error :

      LaunchProcess: failed to execvp:
      /home/bachir/Desktop/Gorille/Gorille-UI/exec
      [5336:5336:0623/023220.195354:FATAL:zygote_host_impl_linux.cc(182)] Check failed: ReceiveFixedMessage(fds[0], kZygoteBootMessage, sizeof(kZygoteBootMessage), &boot_pid). 
      #0 0x7f6ee25fe9a5 <unknown>
      #1 0x7f6ee26147ca <unknown>
      #2 0x7f6ee1c57263 <unknown>
      #3 0x7f6ee1c55edb <unknown>
      #4 0x7f6ee1c564b9 <unknown>
      #5 0x7f6ee1898d4a <unknown>
      #6 0x7f6ee189e286 <unknown>
      #7 0x7f6ee13bb050 <unknown>
      #8 0x7f6ee13bc525 <unknown>
      #9 0x7f6ee13ac2d9 <unknown>
      #10 0x7f6ee13ac67e QtWebEngineCore::WebContentsAdapter::WebContentsAdapter()
      #11 0x7f6eea40f281 <unknown>
      #12 0x7f6eea40fcd4 QWebEnginePage::QWebEnginePage()
      #13 0x000000430013 CyberDetect::parseHtmlCFG()
      #14 0x000000430e84 CyberDetect::parseProcessCFG()
      #15 0x00000043b563 CyberDetect::taskDisplay()
      #16 0x00000047472c CyberDetect::qt_static_metacall()
      #17 0x7f6ee8f2db21 QObject::event()
      #18 0x7f6ee9d4d5e3 QWidget::event()
      #19 0x7f6ee9e59891 QMainWindow::event()
      #20 0x7f6ee9d1054c QApplicationPrivate::notify_helper()
      #21 0x7f6ee9d17897 QApplication::notify()
      #22 0x7f6ee8f019f8 QCoreApplication::notifyInternal2()
      #23 0x7f6ee8f0448b QCoreApplicationPrivate::sendPostedEvents()
      #24 0x7f6ee8f56563 <unknown>
      #25 0x7f6edc7c3287 g_main_context_dispatch
      #26 0x7f6edc7c34c0 <unknown>
      #27 0x7f6edc7c354c g_main_context_iteration
      #28 0x7f6ee8f55baf QEventDispatcherGlib::processEvents()
      #29 0x7f6ed62da9a1 <unknown>
      #30 0x7f6ee8f0026a QEventLoop::exec()
      #31 0x7f6ee8f08da4 QCoreApplication::exec()
      #32 0x000000415ed8 main
      #33 0x7f6ee830db97 __libc_start_main
      #34 0x000000415f69 _start
      
      Received signal 6
      #0 0x7f6ee25fe9a5 <unknown>
      #1 0x7f6ee133e501 <unknown>
      #2 0x7f6ee25fed3d <unknown>
      #3 0x7f6ee832af20 <unknown>
      #4 0x7f6ee832ae97 gsignal
      #5 0x7f6ee832c801 abort
      #6 0x7f6ee25fe6c5 <unknown>
      #7 0x7f6ee2614aed <unknown>
      #8 0x7f6ee1c57263 <unknown>
      #9 0x7f6ee1c55edb <unknown>
      #10 0x7f6ee1c564b9 <unknown>
      #11 0x7f6ee1898d4a <unknown>
      #12 0x7f6ee189e286 <unknown>
      #13 0x7f6ee13bb050 <unknown>
      #14 0x7f6ee13bc525 <unknown>
      #15 0x7f6ee13ac2d9 <unknown>
      #16 0x7f6ee13ac67e QtWebEngineCore::WebContentsAdapter::WebContentsAdapter()
      #17 0x7f6eea40f281 <unknown>
      #18 0x7f6eea40fcd4 QWebEnginePage::QWebEnginePage()
      #19 0x000000430013 CyberDetect::parseHtmlCFG()
      #20 0x000000430e84 CyberDetect::parseProcessCFG()
      #21 0x00000043b563 CyberDetect::taskDisplay()
      #22 0x00000047472c CyberDetect::qt_static_metacall()
      #23 0x7f6ee8f2db21 QObject::event()
      #24 0x7f6ee9d4d5e3 QWidget::event()
      #25 0x7f6ee9e59891 QMainWindow::event()
      #26 0x7f6ee9d1054c QApplicationPrivate::notify_helper()
      #27 0x7f6ee9d17897 QApplication::notify()
      #28 0x7f6ee8f019f8 QCoreApplication::notifyInternal2()
      #29 0x7f6ee8f0448b QCoreApplicationPrivate::sendPostedEvents()
      #30 0x7f6ee8f56563 <unknown>
      #31 0x7f6edc7c3287 g_main_context_dispatch
      #32 0x7f6edc7c34c0 <unknown>
      #33 0x7f6edc7c354c g_main_context_iteration
      #34 0x7f6ee8f55baf QEventDispatcherGlib::processEvents()
      #35 0x7f6ed62da9a1 <unknown>
      #36 0x7f6ee8f0026a QEventLoop::exec()
      #37 0x7f6ee8f08da4 QCoreApplication::exec()
      #38 0x000000415ed8 main
      #39 0x7f6ee830db97 __libc_start_main
      #40 0x000000415f69 _start
        r8: 0000000000000000  r9: 00007fff8677eca0 r10: 0000000000000008 r11: 0000000000000246
       r12: 00007fff8677ef20 r13: 00000000000000aa r14: 00007fff8677f150 r15: 00007fff8677f8c0
        di: 0000000000000002  si: 00007fff8677eca0  bp: 00007f6ee8c81d60  bx: 00007fff8677f6a0
        dx: 0000000000000000  ax: 0000000000000000  cx: 00007f6ee832ae97  sp: 00007fff8677eca0
        ip: 00007f6ee832ae97 efl: 0000000000000246 cgf: 002b000000000033 erf: 0000000000000000
       trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
      [end of stack trace]
      Calling _exit(1). Core file will not be generated.
      

      I am running a Qt application developed in C++ on Linux which is using the libexec QtWebEngineProcess.
      On my computer, everything is fine. However, when deploying the app on another computer, everything goes wrong.
      I had to use a shell script to link the dynamic libs and libexec, so the app can be executed :

      #!/bin/sh
      appname=`basename $0 .sh`
      
      dirname=`dirname $0`
      tmp="${dirname#?}"
      
      if [ "${dirname%$tmp}" != "/" ]; then
      dirname=$PWD/$dirname
      fi
      
      LD_LIBRARY_PATH=$dirname/"libs"
      QTWEBENGINEPROCESS_PATH=$dirname/"exec"
      export LD_LIBRARY_PATH
      export QTWEBENGINEPROCESS_PATH
      
      $dirname/$appname "$@"
      

      So far, so good!
      But when the code using the Qt web engine is processed, I get this SIGABRT signal with the execution stack displayed above.

      I have been searching for days how to solve the issue, in vain.
      The linux distribution is ubuntu 16.04 LTS on both computers (development and test) and the Qt version is 5.10.0.
      This is the guilty code :

      ...
      QWebEngineView *webView = new QWebEngineView();
      ...
      

      As you can see, it's just a constructor...

      I have tested linuxdeployqt to obtain a standalone app and of course, it doesn't work at all :

      ...
      ERROR: Please ensure that all libraries can be found by ldd. Aborting.
      

      Which is surprising as I used the ldd command to select the libraries to copy.
      The version is the following : linuxdeployqt 4 (commit 5542062), build 559 built on 2018-06-18 17:51:07 UTC

      Any idea? At least a lead or anything to work on...
      I don't know whether my deployment process is incorrect, or the Qt web engine process is buggy, or maybe anything else!

      Many thanks for your answer.
      Bachir.

      JonB 1 Reply Last reply Reply Quote 0
      • JonB
        JonB @bachir last edited by

        @bachir
        Just checking: IIRC, to use QWebEngine under Linux requires a distinct apt-get (I install everything from apt). Has that been done correctly on the machine where you have the problem?

        B 1 Reply Last reply Reply Quote 0
        • B
          bachir @JonB last edited by

          @JonB thanks for your answer

          • On the dev machine, I installed everything with the Qt maintenance tool and the app is running without crashing;
          • On the test machine, I have copied every required lib, including libQt5WebEngineCore.so.5.10.0 and libQt5WebEngineWidgets.so.5.10.0, along with QtWebEngineProcess.

          So what did you mean exactly by installing using apt-get? Should I do that on the dev machine or the test machine?

          JonB 1 Reply Last reply Reply Quote 0
          • JonB
            JonB @bachir last edited by

            @bachir
            I use apt-get. You do not. And you use linuxdeployqt. That's fair enough. You seem to have done a bit for Qt5 WebEngine at least. You now need someone else to look at your issue.

            B 1 Reply Last reply Reply Quote 0
            • B
              bachir @JonB last edited by

              @JonB Thanks!
              By the way, I tried to use linuxdeployqt but it didn't work so I deployed the app manually.
              Anyone can tell me why copy and paste QtWebEngineProc make it not working anymore?!

              1 Reply Last reply Reply Quote 0
              • SGaist
                SGaist Lifetime Qt Champion last edited by

                Hi and welcome to devnet,

                Did you follow the dedicated QtWebEngine deployment procedure ?

                Interested in AI ? www.idiap.ch
                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                B 1 Reply Last reply Reply Quote 2
                • B
                  bachir @SGaist last edited by

                  @SGaist
                  Hi and thanks
                  Yes, I have followed thoroughly the procedure.
                  My folder contains these elements :

                  • myexe
                  • qt.conf
                  • run.sh
                  • Qt

                  The Qt folder has all the required dependencies with the exact same naming than Qt :

                  • lib
                  • libexec
                  • plugins
                  • resources
                  • translations

                  The qt.conf file just override the prefix and run.sh is a script that run myexe with the correct environment values (LD_LIBRARY_PATH & QTWEBENGINEPROCESS_PATH)

                  I am pretty sure to have all required dependencies. Besides if I copy all the content of /home/bachir/Qt/5.10.0/gcc_64 in my local Qt folder, nothing change. So the problem is elsewhere.

                  I don't understand why moving QtWebEngineProcess make it crash while it has all dependencies?

                  1 Reply Last reply Reply Quote 0
                  • kkoehne
                    kkoehne Moderators last edited by

                    Does the app work if you start it with --single-process added to the command line?

                    Director R&D, The Qt Company

                    1 Reply Last reply Reply Quote 1
                    • First post
                      Last post