Qt Forum

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

    Solved QXcbConnection: Could not connect to display

    Installation and Deployment
    6
    18
    80411
    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.
    • M
      MHermann last edited by

      Hi all!

      I am developing my QtQuick2 application on Ubuntu 16.04.
      Now I am trying to remote debug my QtQuick2 application on an Ubuntu 15.04.
      But this does not work.
      I always get following message and then the application aborts:

      QXcbConnection: Could not connect to display 
      Process killed by signal
      

      Does anyone have an idea what could be the reason for this problem and how it can be solved?

      m.sue 1 Reply Last reply Reply Quote 0
      • m.sue
        m.sue @MHermann last edited by m.sue

        Hi @MHermann

        Please beware that you may need a connection that is able to forward OpenGL.

        -Michael.

        M 1 Reply Last reply Reply Quote 0
        • M
          MHermann @m.sue last edited by

          @m.sue :
          Oh. I forgot to mention.
          I am using the QtCreator and therefore I am connecting via ssh.
          The connection it self can be established. But then my application crashes with the message: "QXcbConnection: Could not connect to display. Process killed by signal."

          m.sue 1 Reply Last reply Reply Quote 0
          • m.sue
            m.sue @MHermann last edited by

            Hi @MHermann

            Does your program start if you call it on the Ubuntu 16 machine directly from the command line?

            -Michael.

            M 1 Reply Last reply Reply Quote 0
            • M
              MHermann @m.sue last edited by

              @m.sue :
              Yes. If I copy my application to the system, then I can start it on the Ubuntu via command line and it is running without problems.

              m.sue 1 Reply Last reply Reply Quote 0
              • m.sue
                m.sue @MHermann last edited by

                Hi @MHermann

                Did you connect via ssh -X or such from the Ubuntu 15 machine for this start test or did you try it directly on the Ubuntu 16 machine?

                -Michael.

                M 1 Reply Last reply Reply Quote 0
                • M
                  MHermann @m.sue last edited by MHermann

                  @m.sue :
                  I tried it directly on the Ubuntu 16 machine.
                  Is it possible to use QtCreator with ssh -X?

                  m.sue 1 Reply Last reply Reply Quote 0
                  • m.sue
                    m.sue @MHermann last edited by

                    Hi @MHermann

                    I would assume that QtCreator does this on its own for remote debugging?

                    Please try also with ssh -X from the Ubuntu 16 command line. If this works the problem lies within QtCreator's connection to the remote machine.

                    -Michael.

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      MHermann @m.sue last edited by

                      @m.sue :
                      I tried it with ssh -X from the Ubuntu 16 command line.
                      This is also not working.
                      It gives me the following error messages:

                      Failed to create OpenGL context for format QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 1, profile  QSurfaceFormat::OpenGLContextProfile(NoProfile)) 
                      

                      Any idea about this?

                      m.sue 1 Reply Last reply Reply Quote 0
                      • m.sue
                        m.sue @MHermann last edited by m.sue

                        Hi @MHermann

                        You will have to solve this OpenGL forwarding problem to make QtCreator remote debugging of a QML program possible.

                        You will have to wait for someone else to take over here.

                        -Michael.

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          MHermann @m.sue last edited by

                          @m.sue :
                          I am not sure if I understand you right here.
                          For summerize:

                          • I can compile and debug the app directly on my Ubuntu 16.

                          • I can also compile remote debug the app on and Raspberry Pi.

                          • I have only problems with remote debugging on Ubuntu 15.

                          So the QtCreator is able to remote debug QML programs.

                          m.sue 1 Reply Last reply Reply Quote 0
                          • m.sue
                            m.sue @MHermann last edited by m.sue

                            Hi @MHermann

                            Yes but I think you have a problem to run a QML program on Ubuntu 15 remotely on Ubuntu 16. That is independent of QtCreator. The problem is to realize OpenGL commands generated in the program running on Ubuntu 15 on the graphics card of your Ubuntu 16 machine. This can be a configuration issue, a general problem, who knows.

                            -Michael.

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              MHermann @m.sue last edited by

                              Has somebody else an idea how I can resolve this problem???

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                MHermann @MHermann last edited by

                                I found the solution.
                                Maybe someone is interested in it...

                                In QtCreator > Run Settings > Run Environment it is necessary to set two environment variables:

                                • DISPLAY
                                • XAUTHORITY

                                After that the debugging works without problems.

                                1 Reply Last reply Reply Quote 1
                                • D
                                  da_ebeng last edited by

                                  Hi @MHermann ,
                                  I have the same problem. i tried to fix it by setting these evironment variables (DISPLAY, XAUTHORITY) but I still get this error:
                                  qt.qpa.screen: QXcbConnection: Could not connect to display <VALUE>
                                  Could not connect to any X display.
                                  I did not set the values of the environment variables. How did you set the values?

                                  1 Reply Last reply Reply Quote 0
                                  • O
                                    obertini last edited by

                                    Hi,
                                    Maybe that can help.

                                    Cross-compiling Qt-5.10 on Raspberry Pi 3 running Raspbian Stretch
                                    In Qt Creator, the Run parameters for the device are:
                                    Use System Environment and
                                    Set DISPLAY to :0
                                    Set XAUTHORITY to /home/pi/.Xauthority

                                    Note that I have also set the run argument as -platform xcb

                                    1 Reply Last reply Reply Quote 1
                                    • afya
                                      afya last edited by

                                      Just as normal user authorize root, to connect to your display :)
                                      xhost +SI:localuser:root

                                      1 Reply Last reply Reply Quote 0
                                      • P
                                        pakainfo Banned last edited by

                                        This post is deleted!
                                        1 Reply Last reply Reply Quote 0
                                        • First post
                                          Last post