Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. Cross-Compilation Qt6.4.2 for Jetson Tx2-NX
Forum Updated to NodeBB v4.3 + New Features

Cross-Compilation Qt6.4.2 for Jetson Tx2-NX

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
4 Posts 2 Posters 658 Views
  • 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.
  • S Offline
    S Offline
    steph27
    wrote on last edited by
    #1

    Hi,

    I try to cross-compile Qt6.4.2 for a Jetson Tx2-NX with this carrier board. The image provided contains :

    • Embedded linux : Linux tegra-ubuntu 4.9.253-tegra
    • GCC : 7.5
    • GLIBC : 2.27

    I followed this tutorial, with a toolchain with GCC 7.5 but I got this error :

    fatal error: charconv: No such file or directory
    

    I found on internet this header is only supported starting from GCC 8.1, so I update the GCC on my board (GCC 8.4).

    Now I get this error :

    FAILED: qtbase/libexec/rcc 
    
    : && /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ --sysroot=/home/linux/TX2/sysroot -march=armv8-a -mtune=cortex-a57.cortex-a53 -fPIC -Wl,-rpath-link,/home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu -L/home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu -I/home/linux/TX2/sysroot/usr/include/aarch64-linux-gnu -pipe -O2 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fPIC -Wl,-rpath-link,/home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu -L/home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu    -Wl,--gc-sections -Wl,--enable-new-dtags qtbase/src/tools/rcc/CMakeFiles/rcc_native.dir/rcc_native_autogen/mocs_compilation.cpp.o qtbase/src/tools/rcc/CMakeFiles/rcc_native.dir/main.cpp.o qtbase/src/tools/rcc/CMakeFiles/rcc_native.dir/rcc.cpp.o -o qtbase/libexec/rcc  qtbase/lib/libQt6Core.a  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libz.so  -lm  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicuuc.so  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicudata.so  qtbase/lib/libQt6BundledPcre2.a  -ldl  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libglib-2.0.so  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libgthread-2.0.so  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/librt.so  -lpthread && :
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `operator delete(void*)@GLIBCXX_3.4'
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `vtable for __cxxabiv1::__si_class_type_info@CXXABI_1.3'
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `__gxx_personality_v0@CXXABI_1.3'
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicuuc.so: undefined reference to `__cxa_call_unexpected@CXXABI_1.3'
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8'
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `vtable for __cxxabiv1::__vmi_class_type_info@CXXABI_1.3'
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `__cxa_pure_virtual@CXXABI_1.3'
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `__dynamic_cast@CXXABI_1.3'
    
    /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `vtable for __cxxabiv1::__class_type_info@CXXABI_1.3'
    
    collect2: error: ld returned 1 exit status
    
    [10/9428] Building CXX object qtbase/src/sql/CMakeFiles/Sql.dir/kernel/qsqldatabase.cpp.o
    
    ninja: build stopped: subcommand failed.
    

    Here is the command used to compile (in static with the commercial license) :

     cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DQT_FEATURE_eglfs_egldevice=ON -DQT_FEATURE_eglfs_gbm=ON -DQT_FORCE_BUILD_TOOLS=ON  \
    -DQT_BUILD_EXAMPLES=OFF -DQT_BUILD_TESTS=OFF -DBUILD_SHARED_LIBS=OFF -DQT_HOST_PATH=~/Qt/6.4.2/gcc_64 -DCMAKE_STAGING_PREFIX=/usr/local/Qt-6.4.2-TX2 \
     -DCMAKE_INSTALL_PREFIX=/usr/local/Qt-6.4.2-TX2 -DCMAKE_PREFIX_PATH=/home/linux/TX2/sysroot/usr/lib/ -DCMAKE_TOOLCHAIN_FILE=/home/linux/TX2/toolchain.cmake \
     -DBUILD_qtwayland=OFF -DFEATURE_open62541_security=ON -DFEATURE_gstreamer=OFF  /home/linux/Qt/6.4.2/Src
    

    Any hint about what I'm doing wrong ?

    Regards
    Stéphane

    jsulmJ 1 Reply Last reply
    0
    • S steph27

      Hi,

      I try to cross-compile Qt6.4.2 for a Jetson Tx2-NX with this carrier board. The image provided contains :

      • Embedded linux : Linux tegra-ubuntu 4.9.253-tegra
      • GCC : 7.5
      • GLIBC : 2.27

      I followed this tutorial, with a toolchain with GCC 7.5 but I got this error :

      fatal error: charconv: No such file or directory
      

      I found on internet this header is only supported starting from GCC 8.1, so I update the GCC on my board (GCC 8.4).

      Now I get this error :

      FAILED: qtbase/libexec/rcc 
      
      : && /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ --sysroot=/home/linux/TX2/sysroot -march=armv8-a -mtune=cortex-a57.cortex-a53 -fPIC -Wl,-rpath-link,/home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu -L/home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu -I/home/linux/TX2/sysroot/usr/include/aarch64-linux-gnu -pipe -O2 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fPIC -Wl,-rpath-link,/home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu -L/home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu    -Wl,--gc-sections -Wl,--enable-new-dtags qtbase/src/tools/rcc/CMakeFiles/rcc_native.dir/rcc_native_autogen/mocs_compilation.cpp.o qtbase/src/tools/rcc/CMakeFiles/rcc_native.dir/main.cpp.o qtbase/src/tools/rcc/CMakeFiles/rcc_native.dir/rcc.cpp.o -o qtbase/libexec/rcc  qtbase/lib/libQt6Core.a  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libz.so  -lm  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicuuc.so  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicudata.so  qtbase/lib/libQt6BundledPcre2.a  -ldl  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libglib-2.0.so  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libgthread-2.0.so  /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/librt.so  -lpthread && :
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `operator delete(void*)@GLIBCXX_3.4'
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `vtable for __cxxabiv1::__si_class_type_info@CXXABI_1.3'
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `__gxx_personality_v0@CXXABI_1.3'
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicuuc.so: undefined reference to `__cxa_call_unexpected@CXXABI_1.3'
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8'
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `vtable for __cxxabiv1::__vmi_class_type_info@CXXABI_1.3'
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `__cxa_pure_virtual@CXXABI_1.3'
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `__dynamic_cast@CXXABI_1.3'
      
      /home/linux/TX2/toolchains/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu/bin/../lib/gcc/aarch64-linux-gnu/8.3.0/../../../../aarch64-linux-gnu/bin/ld: /home/linux/TX2/sysroot/usr/lib/aarch64-linux-gnu/libicui18n.so: undefined reference to `vtable for __cxxabiv1::__class_type_info@CXXABI_1.3'
      
      collect2: error: ld returned 1 exit status
      
      [10/9428] Building CXX object qtbase/src/sql/CMakeFiles/Sql.dir/kernel/qsqldatabase.cpp.o
      
      ninja: build stopped: subcommand failed.
      

      Here is the command used to compile (in static with the commercial license) :

       cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DQT_FEATURE_eglfs_egldevice=ON -DQT_FEATURE_eglfs_gbm=ON -DQT_FORCE_BUILD_TOOLS=ON  \
      -DQT_BUILD_EXAMPLES=OFF -DQT_BUILD_TESTS=OFF -DBUILD_SHARED_LIBS=OFF -DQT_HOST_PATH=~/Qt/6.4.2/gcc_64 -DCMAKE_STAGING_PREFIX=/usr/local/Qt-6.4.2-TX2 \
       -DCMAKE_INSTALL_PREFIX=/usr/local/Qt-6.4.2-TX2 -DCMAKE_PREFIX_PATH=/home/linux/TX2/sysroot/usr/lib/ -DCMAKE_TOOLCHAIN_FILE=/home/linux/TX2/toolchain.cmake \
       -DBUILD_qtwayland=OFF -DFEATURE_open62541_security=ON -DFEATURE_gstreamer=OFF  /home/linux/Qt/6.4.2/Src
      

      Any hint about what I'm doing wrong ?

      Regards
      Stéphane

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

      @steph27 Did you start the build from scratch (from clean state) after changing the compiler?

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

      1 Reply Last reply
      0
      • S Offline
        S Offline
        steph27
        wrote on last edited by
        #3

        Yes I did.

        Another question :
        For the QT_HOST_PATH, should I use the shared libraries or the static ones as I want to build the static libraries for the Jetson ?

        1 Reply Last reply
        0
        • S Offline
          S Offline
          steph27
          wrote on last edited by
          #4

          I updated GCC to the version 11.1 and the GLIBC to 2.36.
          I have now this error while configurating :

          ERROR: C++11 <random> is required and is missing or failed to compile.
          
          1 Reply Last reply
          0

          • Login

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