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 only one QPushButton with QWidget works

    Mobile and Embedded
    5
    39
    1385
    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.
    • K-Str
      K-Str last edited by K-Str

      Hello to all,
      I got a lot of very helpfull information on thos forum. Thanks to all.
      Now I have a problem creating a widget.
      Here my settings:

      • lWidget size = 480x320
      • I removed the following items: QMenuBar, QToolBar, QStatusBar
      • I still have : QMainWindow and QWidget
      • Then I created two PushButtons Shutdown and MotorOnOf

      When I execute the programm it catches only the PushButton Shutdown
      When I have a button on this position on the raspbian GUI I can get it.
      What could be the problem?
      Here the program files:
      MainWindow.cpp

      #include "mainwindow.h"
      #include "ui_mainwindow.h"
      #include <QPushButton>
      #include <QDebug>
      
      MainWindow::MainWindow(QWidget *parent) :
          QMainWindow(parent),
          ui(new Ui::MainWindow)
      {
          ui->setupUi(this);
      }
      
      MainWindow::~MainWindow()
      {
          delete ui;
      }
      
      
      void MainWindow::on_ShutdownButton_clicked()
      {
          qDebug() << "Shutown now";
      }
      
      void MainWindow::on_MotorOnOffButton_clicked()
      {
          qDebug() << "engine on";
      }
      

      MainWindow.h:

      #ifndef MAINWINDOW_H
      #define MAINWINDOW_H
      
      #include <QMainWindow>
      
      namespace Ui {
      class MainWindow;
      }
      
      class MainWindow : public QMainWindow
      {
          Q_OBJECT
      
      public:
          explicit MainWindow(QWidget *parent = nullptr);
          ~MainWindow();
      
      private slots:
      
          void on_ShutdownButton_clicked();
      
          void on_MotorOnOffButton_clicked();
      
      private:
          Ui::MainWindow *ui;
      };
      
      #endif // MAINWINDOW_H
      
      

      MainWindow.ui:

      <?xml version="1.0" encoding="UTF-8"?>
      <ui version="4.0">
       <class>MainWindow</class>
       <widget class="QMainWindow" name="MainWindow">
        <property name="geometry">
         <rect>
          <x>0</x>
          <y>0</y>
          <width>480</width>
          <height>320</height>
         </rect>
        </property>
        <property name="windowTitle">
         <string>MainWindow</string>
        </property>
        <widget class="QWidget" name="centralWidget">
         <widget class="QPushButton" name="MotorOnOffButton">
          <property name="geometry">
           <rect>
            <x>360</x>
            <y>270</y>
            <width>89</width>
            <height>25</height>
           </rect>
          </property>
          <property name="text">
           <string>Engine off</string>
          </property>
         </widget>
         <widget class="QPushButton" name="ShutdownButton">
          <property name="geometry">
           <rect>
            <x>70</x>
            <y>230</y>
            <width>89</width>
            <height>25</height>
           </rect>
          </property>
          <property name="text">
           <string>Shutdown</string>
          </property>
         </widget>
        </widget>
       </widget>
       <layoutdefault spacing="6" margin="11"/>
       <resources/>
       <connections/>
      </ui>
      
      
      1 Reply Last reply Reply Quote 0
      • mrjj
        mrjj Lifetime Qt Champion last edited by

        Hi
        Without code, its really hard to guess at anything.

        You can paste the code here. just use the code tag from the editor.

        1 Reply Last reply Reply Quote 0
        • K-Str
          K-Str last edited by K-Str

          @mrjj yes!
          I inserted the code now. See post above.

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

            Hi,

            Do you have any runtime warning about slots not connected ?

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

            1 Reply Last reply Reply Quote 0
            • K-Str
              K-Str last edited by K-Str

              @SGaist thanks for your answer.
              I'm in the hospital and will answer as soon as I'm at home.
              Is this warning visible running it using the Qt debugger?

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

                There's no Qt debugger as there is no Qt compiler.

                As for the runtime warning, they are printed on stdout.

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

                1 Reply Last reply Reply Quote 0
                • K-Str
                  K-Str last edited by K-Str

                  @SGaist
                  yes there are some warnings:

                  16:15:13: Checking available ports...
                  16:15:13: Found 101 free ports.
                  16:15:13: Starting gdbserver --multi :10000...
                  16:15:13: Debugging starts
                  SSH is enabled and the default password for the 'pi' user has not been changed.
                  This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.
                  
                  1689
                  Listening on port 10000
                  Remote debugging from host 192.168.180.65
                  Process /opt/Teleskop/bin/Teleskop created; pid = 1707
                  Could not load shared library symbols for 3 libraries, e.g. /usr/local/qt5pi/lib/libQt5Widgets.so.5.
                  Use the "info sharedlibrary" command to see the complete listing.
                  Do you need "set solib-search-path" or "set sysroot"?Could not load shared library symbols for 3 libraries, e.g. /usr/local/qt5pi/plugins/platforms/libqeglfs.so.Use the "info sharedlibrary" command to see the complete listing.
                  Do you need "set solib-search-path" or "set sysroot"?
                  Could not load shared library symbols for /usr/local/qt5pi/plugins/egldeviceintegrations/libqeglfs-brcm-integration.so.Do you need "set solib-search-path" or "set sysroot"?
                  Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqgif.so.Do you need "set solib-search-path" or "set sysroot"?
                  Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqico.so.Do you need "set solib-search-path" or "set sysroot"?
                  Could not load shared library symbols for /usr/local/qt5pi/plugins/imageformats/libqjpeg.so.Do you need "set solib-search-path" or "set sysroot"?
                  Unable to query physical screen size, defaulting to 100 dpi.To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
                  
                  

                  Maybe there is a failure.

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

                    Are you running this application on a remote device ?

                    If so, you should rather make it run first on your desktop machine and then run on the device.

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

                    1 Reply Last reply Reply Quote 0
                    • K-Str
                      K-Str last edited by

                      @SGaist
                      I added the Kit for Desktop Qt 5.12.3 GCC 64 Bit-
                      It doesn't work. This is the error:

                      17:06:03: Running steps for project Teleskop...
                      17:06:03: Configuration unchanged, skipping qmake step.
                      17:06:03: Starting: "/usr/bin/make" -j4
                      g++ -Wl,-rpath,/home/kurt/Qt/5.12.3/gcc_64/lib -o Teleskop main.o mainwindow.o moc_mainwindow.o   -L/home/kurt/Qt/5.12.3/gcc_64/lib -lQt5Widgets -lQt5Gui -lQt5Core -lGL -lpthread   
                      /usr/bin/ld: cannot find -lGL
                      Makefile:263: recipe for target 'Teleskop' failed
                      collect2: error: ld returned 1 exit status
                      make: *** [Teleskop] Error 1
                      17:06:03: The process "/usr/bin/make" exited with code 2.
                      Error while building/deploying project Teleskop (kit: Desktop Qt 5.12.3 GCC 64bit)
                      When executing step "Make"
                      17:06:03: Elapsed time: 00:00.
                      

                      I think I have to add the module GL. Is this correct? But where can I find this?

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

                        The missing GL error has been asked about many times already, you have to install the OpenGL development package from your distribution.

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

                        1 Reply Last reply Reply Quote 1
                        • K-Str
                          K-Str last edited by

                          @SGaist ,
                          thanks for this hint I will add the kit for Ubuntu again tomorrow.

                          1 Reply Last reply Reply Quote 0
                          • K-Str
                            K-Str last edited by K-Str

                            @SGaist
                            Yes I try to run it remotely on a raspberry.
                            Now I have installed the kit for the host PC. Yes it works perfect on the host.
                            What can I do to make it working on a remote raspberry? I use /usr/bin/gdb-multiarch for debugging remotely on the raspberry. Is this ok

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

                              Do you mean that your application is working fine on your desktop and still not on your target ?

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

                              1 Reply Last reply Reply Quote 0
                              • K-Str
                                K-Str last edited by K-Str

                                @SGaist yes
                                if the target is the linux host (ubuntu desktop) the application works fine.
                                If the target is the raspberry it does not work.
                                What about this info:

                                Could not load shared library symbols for 3 libraries, e.g. /usr/local/qt5pi/lib/libQt5Widgets.so.5.
                                

                                Is there something missing?
                                Maybe somebody knows more about this problem.

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

                                  What do you get if you call ldd on that file ?

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

                                  1 Reply Last reply Reply Quote 0
                                  • K-Str
                                    K-Str last edited by

                                    @SGaist , where must I run ldd?
                                    On the linux host PC or on the raspberry?

                                    1 Reply Last reply Reply Quote 0
                                    • K-Str
                                      K-Str last edited by K-Str

                                      @SGaist ;
                                      I will check it tomorrow

                                      SGaist 1 Reply Last reply Reply Quote 0
                                      • SGaist
                                        SGaist Lifetime Qt Champion @K-Str last edited by

                                        @k-str said in only one QPushButton with QWidget works:

                                        Sorry, I made a mistake

                                        What do you mean with that ?

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

                                        1 Reply Last reply Reply Quote 0
                                        • K-Str
                                          K-Str last edited by

                                          @SGaist ,
                                          yesterday I had some trouble with my computer network and I couldn't write a post correcttly.
                                          Here the output of lcc:
                                          0_1567681332209_LCC_Teleskop.JPG
                                          Do yoe need the output also when I run lcc on the on the Linux host?

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

                                            Looks good. What is the exact error message you're getting when starting your application ?

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

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