Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. problem with System()
Forum Updated to NodeBB v4.3 + New Features

problem with System()

Scheduled Pinned Locked Moved Unsolved General and Desktop
system commandsystem
37 Posts 5 Posters 13.3k Views 2 Watching
  • 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.
  • mrjjM Offline
    mrjjM Offline
    mrjj
    Lifetime Qt Champion
    wrote on last edited by
    #5

    @AlvaroS said:

    sprintf(command, "%s %0.0f %0.0f 0 %0.0f %0.0f %s 0 0 +", princi,wps.front().x(), wps.front().y(),wps.back().x(),wps.back().y(),name_bmp)

    What types are
    princi
    name_bmp

    better not be QStrings :)

    AlvaroSA 1 Reply Last reply
    3
    • mrjjM mrjj

      @AlvaroS said:

      sprintf(command, "%s %0.0f %0.0f 0 %0.0f %0.0f %s 0 0 +", princi,wps.front().x(), wps.front().y(),wps.back().x(),wps.back().y(),name_bmp)

      What types are
      princi
      name_bmp

      better not be QStrings :)

      AlvaroSA Offline
      AlvaroSA Offline
      AlvaroS
      wrote on last edited by
      #6

      @mrjj Hello.
      They are const char* !

      1 Reply Last reply
      1
      • SGaistS Offline
        SGaistS Offline
        SGaist
        Lifetime Qt Champion
        wrote on last edited by
        #7

        Then run your application through the debugger.

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

        AlvaroSA 1 Reply Last reply
        0
        • SGaistS SGaist

          Then run your application through the debugger.

          AlvaroSA Offline
          AlvaroSA Offline
          AlvaroS
          wrote on last edited by
          #8

          @SGaist Now I do this:

              QString program = "./home/princi";
              QStringList arguments;
          
              arguments << "0" << QString::number(wps.front().x()) << QString::number(wps.front().y()) << "0" << QString::number(wps.back().x()) << QString::number(wps.back().y()) << "prueba_princi.bmp" << "0 0 +" ;
          
              QProcess myProcess;
          
              myProcess.start(program,arguments);
          

          it compiles good but my application does not run...

          1 Reply Last reply
          0
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #9

            You call it with a path relative to where you main application is started.

            ./home/princi is equivalent to $PWD/home/princi/ which is likely not what you want, is it ?

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

            AlvaroSA 2 Replies Last reply
            2
            • SGaistS SGaist

              You call it with a path relative to where you main application is started.

              ./home/princi is equivalent to $PWD/home/princi/ which is likely not what you want, is it ?

              AlvaroSA Offline
              AlvaroSA Offline
              AlvaroS
              wrote on last edited by
              #10

              @SGaist yes! but it does not run with that code..

              1 Reply Last reply
              0
              • SGaistS SGaist

                You call it with a path relative to where you main application is started.

                ./home/princi is equivalent to $PWD/home/princi/ which is likely not what you want, is it ?

                AlvaroSA Offline
                AlvaroSA Offline
                AlvaroS
                wrote on last edited by
                #11

                @SGaist Now I do this and nothing as well..

                    QString program = "princi";
                    QStringList arguments;
                
                    arguments << "0" << QString::number(wps.front().x()) << QString::number(wps.front().y()) << "0" << QString::number(wps.back().x()) << QString::number(wps.back().y()) << "prueba_princi.bmp" << "0 0 +" ;
                
                    QString folder = "/home/";
                
                    QProcess *myProcess = new QProcess(this);
                
                    myProcess->setWorkingDirectory(folder);
                
                    myProcess->start(program,arguments);
                
                1 Reply Last reply
                0
                • SGaistS Offline
                  SGaistS Offline
                  SGaist
                  Lifetime Qt Champion
                  wrote on last edited by
                  #12

                  What is the full path to princi ? And what is the full path to 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

                  AlvaroSA 1 Reply Last reply
                  0
                  • SGaistS SGaist

                    What is the full path to princi ? And what is the full path to your application ?

                    AlvaroSA Offline
                    AlvaroSA Offline
                    AlvaroS
                    wrote on last edited by
                    #13

                    @SGaist Full path of princi (which is the executable) is /home/
                    and full path of my QT aplication is /home/workspace

                    1 Reply Last reply
                    0
                    • jsulmJ Offline
                      jsulmJ Offline
                      jsulm
                      Lifetime Qt Champion
                      wrote on last edited by
                      #14

                      /home is not the full path to your application except it is called home and is located in the root directory.
                      So, you can start the program in a shell with /home/princi?
                      Did you try it?
                      This is quite strange path: in /home you usually have a directory for each user and /home is not writable by normal user.

                      https://forum.qt.io/topic/113070/qt-code-of-conduct

                      AlvaroSA 1 Reply Last reply
                      2
                      • jsulmJ jsulm

                        /home is not the full path to your application except it is called home and is located in the root directory.
                        So, you can start the program in a shell with /home/princi?
                        Did you try it?
                        This is quite strange path: in /home you usually have a directory for each user and /home is not writable by normal user.

                        AlvaroSA Offline
                        AlvaroSA Offline
                        AlvaroS
                        wrote on last edited by
                        #15

                        @jsulm sorry yes, it is in /home/user1/ but it does not run as well...

                        1 Reply Last reply
                        0
                        • mrjjM Offline
                          mrjjM Offline
                          mrjj
                          Lifetime Qt Champion
                          wrote on last edited by
                          #16

                          @AlvaroS said:

                          QString program = "princi";

                          should be

                          QString program = "/home/user1/princi";

                          ?

                          AlvaroSA 1 Reply Last reply
                          1
                          • mrjjM mrjj

                            @AlvaroS said:

                            QString program = "princi";

                            should be

                            QString program = "/home/user1/princi";

                            ?

                            AlvaroSA Offline
                            AlvaroSA Offline
                            AlvaroS
                            wrote on last edited by
                            #17

                            @mrjj It works in the same way... :(

                            jsulmJ mrjjM 2 Replies Last reply
                            0
                            • AlvaroSA AlvaroS

                              @mrjj It works in the same way... :(

                              jsulmJ Offline
                              jsulmJ Offline
                              jsulm
                              Lifetime Qt Champion
                              wrote on last edited by
                              #18

                              @AlvaroS So, if you enter /home/user1/princi in a terminal window and press enter it does not start? What happens? Any error message?

                              https://forum.qt.io/topic/113070/qt-code-of-conduct

                              AlvaroSA 1 Reply Last reply
                              1
                              • AlvaroSA AlvaroS

                                @mrjj It works in the same way... :(

                                mrjjM Offline
                                mrjjM Offline
                                mrjj
                                Lifetime Qt Champion
                                wrote on last edited by
                                #19

                                @AlvaroS

                                Ok, you must debug then
                                try to use
                                http://doc.qt.io/qt-5/qprocess.html#error
                                to see what it thinks.

                                AlvaroSA 1 Reply Last reply
                                2
                                • jsulmJ jsulm

                                  @AlvaroS So, if you enter /home/user1/princi in a terminal window and press enter it does not start? What happens? Any error message?

                                  AlvaroSA Offline
                                  AlvaroSA Offline
                                  AlvaroS
                                  wrote on last edited by
                                  #20

                                  @jsulm In a terminal if I write

                                  ./princi 0 747.37 427.68 0 844.37 42.54 prueba_princi.bmp 0 0 +
                                  

                                  in /home/user1/ directory it runs good

                                  jsulmJ AlvaroSA 2 Replies Last reply
                                  0
                                  • AlvaroSA AlvaroS

                                    @jsulm In a terminal if I write

                                    ./princi 0 747.37 427.68 0 844.37 42.54 prueba_princi.bmp 0 0 +
                                    

                                    in /home/user1/ directory it runs good

                                    jsulmJ Offline
                                    jsulmJ Offline
                                    jsulm
                                    Lifetime Qt Champion
                                    wrote on last edited by jsulm
                                    #21

                                    @AlvaroS Then try what @mrjj suggested

                                    https://forum.qt.io/topic/113070/qt-code-of-conduct

                                    1 Reply Last reply
                                    0
                                    • mrjjM mrjj

                                      @AlvaroS

                                      Ok, you must debug then
                                      try to use
                                      http://doc.qt.io/qt-5/qprocess.html#error
                                      to see what it thinks.

                                      AlvaroSA Offline
                                      AlvaroSA Offline
                                      AlvaroS
                                      wrote on last edited by
                                      #22
                                      This post is deleted!
                                      mrjjM 1 Reply Last reply
                                      0
                                      • AlvaroSA AlvaroS

                                        @jsulm In a terminal if I write

                                        ./princi 0 747.37 427.68 0 844.37 42.54 prueba_princi.bmp 0 0 +
                                        

                                        in /home/user1/ directory it runs good

                                        AlvaroSA Offline
                                        AlvaroSA Offline
                                        AlvaroS
                                        wrote on last edited by AlvaroS
                                        #23

                                        @AlvaroS said:

                                        @jsulm In a terminal if I write

                                        ./princi 0 747.37 427.68 0 844.37 42.54 prueba_princi.bmp 0 0 +
                                        

                                        in /home/user1/ directory it runs good

                                        @jsulm said:

                                        @AlvaroS Then try what @mrjj suggested

                                        okey, it gives me UnknowError.... http://doc.qt.io/qt-5/qprocess.html#ProcessError-enum

                                        1 Reply Last reply
                                        0
                                        • AlvaroSA AlvaroS

                                          This post is deleted!

                                          mrjjM Offline
                                          mrjjM Offline
                                          mrjj
                                          Lifetime Qt Champion
                                          wrote on last edited by
                                          #24

                                          @AlvaroS

                                          well you can use
                                          qDebug() "qproc: " << myProcess->error();

                                          and check the code in
                                          http://doc.qt.io/qt-5/qprocess.html#ProcessError-enum

                                          AlvaroSA 1 Reply Last reply
                                          1

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved