This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Qt on OMAP3530 Zoom

Other Parts Discussed in Thread: OMAP3530

Hello,

I am trying to execute a Qt demo on the OMAP3530 Zoom board. I have loaded GNU Linux.

I have been able to compile a simple helloworld using the codesourcery toolchain and it has executed successfully on the board.

I configured and built Qt for OMAP as per the instructions in the following link -

http://tiexpressdsp.com/index.php/Building_Qt

Then I copied a demo file to the SD card (256MB) and tried to execute the Qt demo. The execution failed and I get the error -

"error while loading shared libraries: libQtGui.so.4: cannot open shared object file: No such file or directory"

To overcome this problem should I configure Qt for static linking?

If anybody has faced a similar problem and resolved the issue, kindly share your approach.

Thanks in advance for your help,

Pranam


 

 

 

  • Pranam,

        I have run Qt apps on the OMAP35x EVM from SD Cards without using any special linking options, but I do it by copying the entire root filesystem to the card and booting it.

    I have been using the configuration instructions here:

    http://wiki.davincidsp.com/index.php/Building_Qt_for_OMAP35xx_with_OpenGL_ES_accelerated_by_SGX

    http://wiki.davincidsp.com/index.php/OMAP35x_DVEVM_Boot_from_SD/MMC_card

     

    Regards, Clay

  • Thanks Clay. I statically linked and built Qt. Now I do not get the earlier errors. However I get a new set of errors -

    ./mainwindow: /lib/libstdc++.so.6: version `CXXABI_ARM_1.3.3' not found (required by ./mainwindow)
    ./mainwindow: /lib/libc.so.6: version `GLIBC_2.9' not found (required by ./mainwindow)
    ./mainwindow: /lib/libc.so.6: version `GLIBC_2.10' not found (required by ./mainwindow)

    I think it is because I have built Qt on my Fedora 11 (kernel 2.6.29) while the loaded linux image (linux-demo-omap-20090415.elf) is kernel 2.6.28. Do you think this is the issue here? Any ideas on how I can resolve it?

    Regards,

    Pranam

     

     

     

     

  • I am trying the procedure in the link you have provided. I will let you know how this goes shortly.

  • While installing, I had a problem with my fedora 11 (Gnome power manager failed). I had to make space by deleting some tmp and cache files...however it didnt go well and I ended up reinstalling Fedora! I suspect that maybe I deleted some files from the RFS that I was not supposed to.

    I am going to try this again and will let you know how it goes.

     

  • Clay - The git repository sometimes fails in fetching the packs. While doing a git (through http because of proxy), I got an error-

    error: Unable to get pack file http://git.gitorious.org/qt/qt.git/

    I re ran the git clone command (git clone http://git.gitorious.org/qt/qt.git )

    Now I get the error-

    error: o the namespace
                 * mappings of the current node.
                 */
                QXmlName convertToQName(const QString &name) const;

                XsdSchemaContext::Ptr      m_context;
                XsdSchema::Ptr             m_schema;
                con (curl_result = 56, http_code = 0, sha1 = c2b3d19f928cbb39fd85dd013493d5c2bc988656)
    Getting pack 5a13da39a93b78814fb493a15d8776819fade866
     which contains c2b3d19f928cbb39fd85dd013493d5c2bc988656
    got 19364e53376d864f1cf03764d7a5758169409291
    got dbf976c606202ffb806c1773eebbb81deed460d1
    error: asked widgets receive mouse events only on their visible
        portions.

        \sa clearMask(), windowOpacity(), {Shaped Clock Example}
    */
    void QWidget::setMask(const QBitmap &bitmap)
    {
        setMask(QRegion(bitmap));
    }

    /*!
        \fn void QWidget::clearMask()

      (curl_result = 56, http_code = 0, sha1 = 0dbf98ffbce6c305ed3c55d95914a277aa8e930f)
    error: Unable to find 0dbf98ffbce6c305ed3c55d95914a277aa8e930f under http://git.gitorious.org/qt/qt.git
    Cannot obtain needed blob 0dbf98ffbce6c305ed3c55d95914a277aa8e930f
    while processing commit ca48175b994ddcef386751cd2968e32b5755b1a6.
    fatal: Fetch failed.

    Have you faced this problem before? Thanks for your help.

     

     

  • I kept re-trying and finally 100% fetch was complete. Now I'm building and installing Qt

  • Pranam,

    usually it is not needed to do static linking with Qt. However you need to follow the install process and of course copy the Qt folder onto your target at the location you specified during configure (-prefix option). Or create a symlink accordingly.

    Concerning the above errors I usually get this if I compile Qt (or anything else) with a newer compiler than the target filesystem. Make sure that you have compatible versions of target compiler and binaries. As you didn't give any info on your compilers and PSPs I can't say more. However since PSP 3.00.00.02 I switched to CodeSourcery gcc 2009q1. This works.

    Regards.

  • Frank,

    Thanks for your message. I have completed the process and successfully built qt-embedded using the arm-2008q1 and PSP  OMAP35x-PSP-SDK-02.01.03.11.

    Now I would like to run the demo and examples in the folder qt-embedded.

    My question is can I just copy the qt-embedded folder to the path /opt/ on the OMAP board and run the application? if not kindly advise how can I do this.

    I would like to know specifically what are the files and folders that I need to copy on the board to be able to load linux and qt file systems (excuse me if these questions are elementary as I am a newbie)

    Regards,

    Pranam

     

  • The command:

    make install INSTALL_ROOT=/target

    will copy the entire Qt SDK you built to your target.  But, you can just copy individual Qt app executable files to the target and run them too.  For example:

    cp examples\animation\moveblocks\moveblocks   target/opt/.

    cd target/opt

    ./moveblocks -qws

    Regards, Clay

  • Sorry Clay. I do not understand. After building Qt SDK, a folder called qt-embedded is created in my host PC in /opt/qt-embedded.

    Should I just copy this folder to my target ? I am unable to understand where is the rfs created that I should load on my board. Currently I am loading a demo linux on the board and thinking of copying the qt-embedded folder to /opt in the file system of the demo linux. Will this work?

    Thanks again for your help.

  •   Oh, you are using SD cards instead of NFS.  That is fine.

      The "make" command builds the Qt SDK on your host and the "make install" command then copies that to your target filesystem.  So, you need to copy from whatever path you are specifying to "make install".  You do not really have to copy the entire built Qt SDK tree, but it is a good test to get started.  You can then copy individual program files and they will run on the target.

    Regards, Clay

     

  • Yes I am using the SD card. I was reading about partitioning the SD card and loading the root file system along with Qt. If you have any documents or links that describes the steps and procedure involved for copying the PSP file system and Qt SDK, to the SD card and load them on a Zoom OMAP 3530 development board, kindly share the same. Thanks.

    Regards,

    Pranam

     

  • Success!

    Finally I was able to run Qt demos on the logicpd zoom OMAP3530 development board.

    All I had to do was place the libs in the appropriate paths, remove some lib linkages and rename the libs that the application was dependant upon.

    Thank you all for your support over the past week! I very much appreciate it.

    Regards,

    Pranam