mavlink / qgroundcontrol

Cross-platform ground control station for drones (Android, iOS, Mac OS, Linux, Windows)
http://qgroundcontrol.io
3.22k stars 3.56k forks source link

How to sucessfully build QGC on Jetson Orin Nano? #11614

Open lida2003 opened 3 months ago

lida2003 commented 3 months ago

Does anyone have sucessfully build QGC on Jetson Orin Nano?

HTRamsey commented 3 months ago

Embedded Linux was not an intended target of QGC. That being said, it would likely work if you remove video related stuff.

lida2003 commented 3 months ago

QT 6.6.3 installed, but still got error.


FAILED: src/VideoReceiver/qmlglsink.build/CMakeFiles/qmlglsink.dir/qt6/gstqt6glutility.cc.o
/usr/bin/ccache /usr/bin/c++ -DDAILY_BUILD -DHAVE_QT_QPA_HEADER -DHAVE_QT_X11 -DQGC_APP_NAME=\"QGroundControl\" -DQGC_APP_VERSION_STR=\"v4.3.0-631-g1c4fd4021\" -DQGC_ORG_DOMAIN=\"org.qgroundcontrol\" -DQGC_ORG_NAME=\"QGroundControl.org\" -DQT_CORE_LIB -DQT_DISABLE_DEPRECATED_UP_TO=0x060600 -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_OPENGL_LIB -DQT_QMLINTEGRATION_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QPA_HEADER="<QtGui/qpa/qplatformnativeinterface.h>" -DQT_QUICK_LIB -DUNITTEST_BUILD -I/home/daniel/QGC/qgroundcontrol/build/src/VideoReceiver/qmlglsink.build/qmlglsink_autogen/include -I/home/daniel/QGC/qgroundcontrol/libs/qmlglsink/qt6 -isystem /usr/include/gstreamer-1.0 -isystem /usr/include/glib-2.0 -isystem /usr/lib/aarch64-linux-gnu/glib-2.0/include -isystem /usr/lib/aarch64-linux-gnu/gstreamer-1.0/include -isystem /usr/include/libdrm -isystem /usr/include/orc-0.4 -isystem /home/daniel/QGC/qt6/qt6-install/include/QtCore -isystem /home/daniel/QGC/qt6/qt6-install/include -isystem /home/daniel/QGC/qt6/qt6-install/mkspecs/linux-g++ -isystem /home/daniel/QGC/qt6/qt6-install/include/QtGui -isystem /home/daniel/QGC/qt6/qt6-install/include/QtGui/6.6.3 -isystem /home/daniel/QGC/qt6/qt6-install/include/QtGui/6.6.3/QtGui -isystem /home/daniel/QGC/qt6/qt6-install/include/QtCore/6.6.3 -isystem /home/daniel/QGC/qt6/qt6-install/include/QtCore/6.6.3/QtCore -isystem /home/daniel/QGC/qt6/qt6-install/include/QtOpenGL -isystem /home/daniel/QGC/qt6/qt6-install/include/QtQml -isystem /home/daniel/QGC/qt6/qt6-install/include/QtQmlIntegration -isystem /home/daniel/QGC/qt6/qt6-install/include/QtNetwork -isystem /home/daniel/QGC/qt6/qt6-install/include/QtQuick -isystem /home/daniel/QGC/qt6/qt6-install/include/QtQmlModels -g -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/lib/aarch64-linux-gnu/gstreamer-1.0/include -I/usr/include/libdrm -I/usr/include/orc-0.4 -pthread -Wno-unused-parameter -Wno-implicit-fallthrough -Wno-unused-private-field -std=gnu++17 -MD -MT src/VideoReceiver/qmlglsink.build/CMakeFiles/qmlglsink.dir/qt6/gstqt6glutility.cc.o -MF src/VideoReceiver/qmlglsink.build/CMakeFiles/qmlglsink.dir/qt6/gstqt6glutility.cc.o.d -o src/VideoReceiver/qmlglsink.build/CMakeFiles/qmlglsink.dir/qt6/gstqt6glutility.cc.o -c /home/daniel/QGC/qgroundcontrol/libs/qmlglsink/qt6/gstqt6glutility.cc
/home/daniel/QGC/qgroundcontrol/libs/qmlglsink/qt6/gstqt6glutility.cc: In function ‘GstGLDisplay* gst_qml6_get_gl_display(gboolean)’:
/home/daniel/QGC/qgroundcontrol/libs/qmlglsink/qt6/gstqt6glutility.cc:94:62: error: ‘QX11Application’ is not a member of ‘QNativeInterface’; did you mean ‘QWaylandApplication’?
   94 |     auto x11_native = app->nativeInterface<QNativeInterface::QX11Application>();
      |                                                              ^~~~~~~~~~~~~~~
      |                                                              QWaylandApplication
/home/daniel/QGC/qgroundcontrol/libs/qmlglsink/qt6/gstqt6glutility.cc:94:79: error: no matching function for call to ‘QGuiApplication::nativeInterface<<expression error> >()’
   94 |     auto x11_native = app->nativeInterface<QNativeInterface::QX11Application>();
      |                                                                               ^
In file included from /home/daniel/QGC/qt6/qt6-install/include/QtCore/qcoreapplication.h:16,
                 from /home/daniel/QGC/qt6/qt6-install/include/QtGui/qguiapplication.h:8,
                 from /home/daniel/QGC/qt6/qt6-install/include/QtGui/QGuiApplication:1,
                 from /home/daniel/QGC/qgroundcontrol/libs/qmlglsink/qt6/gstqt6glutility.cc:26:
/home/daniel/QGC/qt6/qt6-install/include/QtGui/qguiapplication.h:142:5: note: candidate: ‘template<class NativeInterface, class TypeInfo, class BaseType, typename std::enable_if<TypeInfo::isCompatibleWith<QGuiApplication>, bool>::type <anonymous> > NativeInterface* QGuiApplication::nativeInterface() const’
  142 |     QT_DECLARE_NATIVE_INTERFACE_ACCESSOR(QGuiApplication)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/daniel/QGC/qt6/qt6-install/include/QtGui/qguiapplication.h:142:5: note:   template argument deduction/substitution failed:
/home/daniel/QGC/qgroundcontrol/libs/qmlglsink/qt6/gstqt6glutility.cc:94:79: error: template argument 1 is invalid
   94 |     auto x11_native = app->nativeInterface<QNativeInterface::QX11Application>();
      |                                                                               ^
At global scope:
cc1plus: warning: unrecognized command line option ‘-Wno-unused-private-field’
[56/612] Building CXX object test/UI/preferences/CMakeFiles/UIPreferencesQmlTestplugin.dir/UIPreferencesQmlTestplugin_uipreferencesqmltestPlugin.cpp.o
ninja: build stopped: subcommand failed.
jonazti07 commented 1 day ago

I'm also trying to install QGroundControl in a Jetson AGX Orin.

Any update on this disccusion?