Qt5.x on jetson TK1?



  • Re: Qt5.x on Jetson TK1 ?

    Dear all,
    Is there a way to install the subject ^^?
    Is there a step-by step tutorial somewhere?

    I have found an example:

    http://code.qt.io/cgit/qt/qtbase.git/tree/mkspecs/devices/linux-jetson-tk1-pro-g++/qmake.conf

    But there seems neither vibrante

    -device-option VIBRANTE_SDK_TOPDIR=/opt/nvidia/vibrante-vcm30t124-linux

    nor cortex_a15

    -device-option CROSS_COMPILE=/opt/nvidia/toolchains/tegra-4.8.1-nv/usr/bin/arm-cortex_a15-linux-gnueabi/arm-cortex_a15-linux-gnueabi- \

    at the PC I'm trying to compile on.

    I'm just wondering if there is a need of install of the following packages:

    https://launchpad.net/gcc-arm-embedded/5.0/5-2016-q1-update/+download/gcc-arm-none-eabi-5_3-2016q1-20160330-linux.tar.bz2
    https://github.com/Kitware/vibrant

    presuming that there is already arm-linux-gnueabihf .

    Anyone knows what keys to pass to qt /configure if using opensource 5.6, 5.7 version?

    Thank you,
    Regards.



  • You can use this mkspec:

    #
    # qmake configuration for the Tegra Jetson TK1 boards.
    #
    
    include(../common/linux_device_pre.conf)
    
    DISTRO_OPTS += hard-float
    
    QMAKE_INCDIR += /usr/arm-linux-gnueabihf/include \
                    /usr/arm-linux-gnueabihf/include/c++/4.8.2 \
                    /usr/arm-linux-gnueabihf/include/c++/4.8.2/arm-linux-gnueabihf
    
    TEGRA_TK1_CFLAGS        = -mtune=cortex-a15 -march=armv7-a -mfpu=neon-vfpv4 -DWIN_INTERFACE_CUSTOM
    QMAKE_CFLAGS           += $$TEGRA_TK1_CFLAGS
    QMAKE_CXXFLAGS         += $$TEGRA_TK1_CFLAGS
    
    include(../common/linux_arm_device_post.conf)
    
    load(qt_config)
    

    Where the QMAKE_INCDIR depends on your cross-compiler:

    • if you use Linaro - then you can remove this macro
    • if you use Ubuntu's ARM cross-compiler, then need to keep this line (just adapt to your compiler version).

    UPD: But, I had a problems with the gstreamer1.0 on Tegra: https://bugreports.qt.io/browse/QTBUG-51234



  • Thank you,

    I'm trying to compile qt-everywhere-opensource-src-5.6.0 at JTK1

    JTK1 has
    a lot of files and the following is one of the files:

    /usr/bin/arm-linux-gnueabihf-g++-4.8 /usr/bin/X11/arm-linux-gnueabihf-g++-4.8

    in /usr/include/arm-linux-gnueabihf/c++/4.8/ there is "ext" and "bits" folders
    It doesn't seem to be included into in the following section. Does it?

    QMAKE_INCDIR += /usr/include/arm-linux-gnueabihf
    /usr/include/arm-linux-gnueabihf/c++/4.8
    /usr/include/arm-linux-gnueabihf/c++/4.8/

    btw, where to put mkspec file? Into qt-everywhere-opensource-src-5.6.0 folder?

    Thank you,
    Regards



  • first I have to run

    ./configure -prefix $PWD/qtbase -opensource -nomake tests

    and

    make -j 4

    after

    at what stage I have to create mkspec file? After ./ configure done?



  • JTK1 has
    a lot of files and the following is one of the files:

    Nono, it means, that this files are in your host PC (where you has cross-compiler, it is a cross-compiler's includes). I personally recommend to use the Linaro ARM cross-compiler, then you do not need in QMAKE_INCDIR.. QMAKE_INCDIR need only if you use Ubuntu's cross-compiler from the repo (because it has ugly configuration, IMHO)... I say from my expirience with, and maybe I'm wrong..

    tw, where to put mkspec file? Into qt-everywhere-opensource-src-5.6.0 folder?

    to qtbase\mkspecs\devices\<name of your spec>

    Also, you can try a ready spec from the Qt 5.7 sources: qtbase\mkspecs\devices\linux-jetson-tk1-g++



  • This post is deleted!


  • What are approximate space requirements for compilation?

    If you mean a cross-compilation, then, I think ~10G it is an optimal (I did not checked).. Please, try check it himself. :)



  • Thank you for your response.

    The guys at NVIDIA devtalk did say that compilation if done natively doesn't require cross-compiling : https://devtalk.nvidia.com/default/topic/934023/qt5-x-on-jetson-tk1-is-there-a-tutorial-somewhere-/?offset=10#4875829

    However, i have to tackle with the space issue first.
    Thank you!

    Andrey



  • guys at NVIDIA devtalk did say that compilation if done natively doesn't require cross-compiling

    Yes, but it will be too slow against of cross-compiling on host PC. :)



  • I got tackled with space issue.

    It seems that now qt 5.7 installs with configure and make -j 4.

    But how to verify that installation is successful?
    It seems that qt doesn't use make install.

    Does that mean that qt make doesn't update environment variables and can by default be started from bin folder manually?
    Or is it prefix which updates environmental variables?

    Regards,
    Andrey


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.