Search code examples
qtembedded-linuxubuntu-18.04nvidia-jetsonnvidia-jetson-nano

Qt-default version issue on migration from RPi4 to NVIDIA Jetson Nano


Having an issue on migrating a Qt project from RPi4 to NVIDIA Jetson Nano. We wanted to migrate our project to Jetson Nano to improve image processing performance.

The qt dependency of our project is >= 5.11. But Jetson Nano uses Ubuntu 18.04.4 and it has qt5-default package pre-installed in it (in my understanding some system files use it). And this qt5-default packages version is 5.9.5.

I tried to downgrade my qt dependency, but every change made lead to harder to fix issue.

I tried to upgrade default qt5 version but couldn't find any similar guidance. The guides/questions already exists are about x86 etc. environment. Couldn't find any ARM based solution. The qt downloads doesn't give any buildable for ARM env (or I can't find them). The official documents only talks about cross-compiling.

What should I do to overcome this issue? Thanks in advance.


Solution

  • Okay I finally was able to successfully compile QT 5.12.9 on the Nano itself (no cross compilation).

    The steps I did:

    git clone https://code.qt.io/qt/qt5.git
    cd qt5
    git checkout 5.12.9
    

    Then

    git submodule update --init --recursive
    cd ~
    mkdir qt5-build
    cd qt5-build
    

    Configure and build

    ../qt5/configure -nomake examples -nomake tests -skip qtwebengine
    make
    sudo make install
    

    Make took like nearly a whole day to compile all sources. Also I had some compilation errors before. However after skipping webengine and not building the tests and examples in ./configure I was finally able to sucessfully make it.