Qt Forum

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

    Qt Academy Launch in California!

    Solved my cross compiler has error.tslib install but has error

    Tools
    3
    47
    13346
    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.
    • jsulm
      jsulm Lifetime Qt Champion @MhM93 last edited by

      @MhM93 Picture sharing does not work here. Please post the error text.

      "all of the things need /usr/ directory" - why do you want to have the stuff in /usr?

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

      1 Reply Last reply Reply Quote 0
      • MhM93
        MhM93 last edited by

        git@ubuntu:~/helloqt$ make
        arm-linux-g++ -Wl,-rpath-link,/tmp/FriendlyARM/nanopi2/libs/usr/lib -Wl,-O1 -Wl,-rpath,/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -o helloqt main.o    -L/tmp/FriendlyARM/nanopi2/libs/usr/lib -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -L/home/fgit/libts/lib -ltslib -lQtGui -L/usr/local/Trolltech/QtEmbedded-4.8.6-arm/lib -L/tmp/FriendlyARM/nanopi2/libs/usr/lib -lQtNetwork -lQtCore -lpthread 
        /home/fgit/libts/libts.so:file not recognized:File format not recognized
        collect2: error: ld returned 1 exit status
        Makefile:103: recipe for target 'helloqt' failed
        make: *** [helloqt] Error 1
        

        that is the error. when I extract the zip file they placed in /usr/local/ directory. I can not change the directory. This toolchain is https://www.mediafire.com/folder/ilkcy37otd7il/NanoPi2Board#a0l72ygtz0797 that I download and install it

        H.Ghassami

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

          What does file libts.so return ?

          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
          • MhM93
            MhM93 last edited by

            fgit@ubuntu:~$ file ~/libts/lib/libts.so
            /home/fgit/libts/lib/libts.so: symbolic link to libts.so.0.7.0
            fgit@ubuntu:~$ file ~/libts/lib/libts.so.0.7.0 
            /home/fgit/libts/lib/libts.so.0.7.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=a6de3ac1d75c3420a9ecfb7bd34a42bda7524169, not stripped
            fgit@ubuntu:~$
            

            H.Ghassami

            jsulm 1 Reply Last reply Reply Quote 0
            • jsulm
              jsulm Lifetime Qt Champion @MhM93 last edited by

              @MhM93 You built it for X86 not for ARM...

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

              1 Reply Last reply Reply Quote 0
              • MhM93
                MhM93 last edited by

                but I do this with my compiler path

                export PATH=/usr/local/arm/4.7.0/bin:$PATH
                export CROSS_COMPILE=arm-none-linux-gnueabi-
                export CC=${CROSS_COMPILE}gcc
                export CFLAGS=-march=armv7l
                export CXX=${CROSS_COMPILE}"g++" 
                export AR=${CROSS_COMPILE}"ar" 
                export AS=${CROSS_COMPILE}"as"
                export RANLIB=${CROSS_COMPILE}"ranlib"
                export LD=${CROSS_COMPILE}"ld"
                export STRIP=${CROSS_COMPILE}"strip"
                export ac_cv_func_malloc_0_nonnull=yes
                

                H.Ghassami

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

                  Check the configure script options. There's something like --host=arm-none-linux-gnueabi IIRC.

                  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
                  • MhM93
                    MhM93 last edited by

                    really thanksssssssssssssssssssssssssss
                    It compile without error with this command, at last.

                    sudo ./configure --host=arm-none-linux-gnueabihf --prefix=/home/tslib --enable-shared=yes --enable-static=no
                    

                    but when I copy the exe file to my arm device it again show me this error:

                    root@NanoPC-T2:/# tftp 192.168.101.4
                    tftp> get helloqt
                    Received 11692 bytes in 0.4 seconds
                    tftp> quit
                    root@NanoPC-T2:/# . setqt4env
                    ctp = 1
                    root@NanoPC-T2:/# chmod +x helloqt
                    root@NanoPC-T2:/# ./helloqt -qws &
                    [1] 1409
                    root@NanoPC-T2:/# ./helloqt -qws
                    [1]+  Segmentation fault      ./helloqt -qws
                    Segmentation fault
                    root@NanoPC-T2:/# ldd ./helloqt
                            not a dynamic executable
                    root@NanoPC-T2:/# file ./helloqt
                    ./helloqt: ERROR: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3 error reading (Invalid argument)
                    
                    

                    H.Ghassami

                    jsulm 1 Reply Last reply Reply Quote 0
                    • jsulm
                      jsulm Lifetime Qt Champion @MhM93 last edited by jsulm

                      @MhM93 said in my cross compiler has error.tslib install but has error:

                      [1]+ Segmentation fault ./helloqt -qws

                      This is another problem. Try to start your app in a debugger to see what happens.
                      Also why do you start it twice:

                      root@NanoPC-T2:/# ./helloqt -qws &
                      [1] 1409
                      root@NanoPC-T2:/# ./helloqt -qws
                      

                      ?

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

                      1 Reply Last reply Reply Quote 0
                      • MhM93
                        MhM93 last edited by

                        I do not install qt creator to see debug mood in my pc, and also this program is run on nanopc-t2 when I wrote this command it returns :

                        root@NanoPC-T2:/# strace ./helloqt
                        execve("./helloqt", ["./helloqt"], [/* 20 vars */]) = 0
                        brk(NULL)                               = 0x21000
                        uname({sysname="Linux", nodename="NanoPC-T2", ...}) = 0
                        access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
                        mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6f67000
                        access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
                        --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x4} ---
                        +++ killed by SIGSEGV +++
                        Segmentation fault
                        

                        Also why do you start it twice:
                        with silly reason. I just test what happen to run command with & and without it. :)

                        H.Ghassami

                        jsulm 2 Replies Last reply Reply Quote 0
                        • jsulm
                          jsulm Lifetime Qt Champion @MhM93 last edited by

                          @MhM93 You don't need to install QtCreator to debug (QtCreator itself does not have a debugger). Just install gdb on your target device and use it. It looks like your app is running except you try to run two instances at the same time.

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

                          1 Reply Last reply Reply Quote 0
                          • jsulm
                            jsulm Lifetime Qt Champion @MhM93 last edited by

                            @MhM93 See here: http://stackoverflow.com/questions/1656891/problems-with-multiple-qapplications

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

                            1 Reply Last reply Reply Quote 0
                            • MhM93
                              MhM93 last edited by

                              thanks for reply. but i just play one application.
                              oot@NanoPC-T2:/# rm helloqt
                              root@NanoPC-T2:/# tftp 192.168.101.4
                              tftp> get helloqt
                              Received 11692 bytes in 0.5 seconds
                              tftp> quit
                              root@NanoPC-T2:/# chmod +x helloqt
                              root@NanoPC-T2:/# ./helloqt -qws
                              Segmentation fault
                              root@NanoPC-T2:/# file ./helloqt
                              ./helloqt: ERROR: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3 error reading (Invalid argument)
                              root@NanoPC-T2:/#

                              H.Ghassami

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

                                Again, run it through the debugger.

                                By the way, what is the exact architecture of your device ?
                                What Linux distribution are you running on it ?

                                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
                                • MhM93
                                  MhM93 last edited by MhM93

                                  thanks for reply,
                                  I should install debugger on my host or on my target?
                                  this is my device:

                                  root@NanoPC-T2:/# uname -a
                                  Linux NanoPC-T2 3.4.39-s5p4418 #1 SMP PREEMPT Wed Mar 1 13:21:10 HKT 2017 armv7l armv7l armv7l GNU/Linux
                                  

                                  when I run gdb on my device (nanopc-t2):

                                  root@NanoPC-T2:/# gdb -q helloqt
                                  "/helloqt": not in executable format: File truncated
                                  

                                  and also when I run this:

                                  root@NanoPC-T2:/# sudo readelf -a ./helloqt | grep NEEDED
                                  readelf: Error: Reading 0x618 bytes extends past end of file for section headers
                                  readelf: Error: Section headers are not available!
                                   0x00000001 (NEEDED)
                                  

                                  Is that mean my header is wrong?
                                  this is my code:

                                  #include <QApplication>
                                  #include <QPushButton>
                                  int main(int argc, char **argv)
                                  {
                                          QApplication app (argc, argv);
                                          QPushButton button ("Hello world !");
                                          button.show();
                                          return app.exec();
                                  }
                                  

                                  H.Ghassami

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

                                    Looks like there is a problem with your file. How are you copying it over to your 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
                                    • MhM93
                                      MhM93 last edited by MhM93

                                      *I copy it by tftp. First I copy it from ubuntu vmware to windows then wrote this command to copy it to my device:

                                      tftp 192.168.101.4
                                      tftp>get helloqt
                                      //after transfering.....
                                      tftp>quit
                                      

                                      first run this command

                                      . setqt4env
                                      

                                      and after that run this command, I make my file runable with this command:

                                      chmod +x helloqt
                                      

                                      then I run it with this command but that error show to me:

                                      ./helloqt -qws
                                      

                                      ................................................................................................................................................................................
                                      FINALLY RUN MY APP ON ME DEVICE BUT MAKE A LOT OF QUESTION FOR ME:
                                      .............................................................................................................................................................................
                                      I set my ssh to deploy the qt (from vmware ubuntu to my nanopc) also set this to .pro file:

                                      #-------------------------------------------------
                                      #
                                      # Project created by QtCreator 2017-05-13T01:48:28
                                      #
                                      #-------------------------------------------------
                                      
                                      QT       += core gui
                                      
                                      greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
                                      
                                      target.path = ~/helloqt
                                      INSTALLS += target
                                      
                                      TARGET =
                                      TEMPLATE = app
                                      
                                      
                                      SOURCES += main.cpp\
                                             mainwindow.cpp
                                      
                                      HEADERS  += mainwindow.h
                                      
                                      FORMS    += mainwindow.ui
                                      

                                      and set -qws in argument and suddenly see the project run on my device BUT the touch is not worked
                                      when I copy the file to my device as I said above* the app is can not run. what is the different from my code runable and qt runable app?

                                      H.Ghassami

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

                                        Why don't you upload it directly to your device ?
                                        Using e.g. scp ?

                                        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
                                        • MhM93
                                          MhM93 last edited by

                                          sorry , but what is SCP?
                                          I don't know other way to transferring my app to my device

                                          H.Ghassami

                                          jsulm 1 Reply Last reply Reply Quote 0
                                          • jsulm
                                            jsulm Lifetime Qt Champion @MhM93 last edited by jsulm

                                            @MhM93 Why don't you use Google?
                                            First match there for "scp" is: https://en.wikipedia.org/wiki/Secure_copy

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

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