Home        Store        Docs        Blog

Qt issues after new installation


#1

Good night. I’ve been attempting to make a GI that pulls the telemetry data from the BR2, and just the telemetry (no video output) in order to display it on a smaller screen separate from the computer; and to do that, I’ve downloaded QT in order to modify the QGroundControl source code to suit my needs.

Right off the bat, there are some things that I’ve noticed in the General Messages output:
Running Windows Runtime device detection.
C:/Qt/5.9.5/winrt_armv7_msvc2015/bin/winrtrunner.exe --list-devices
Project MESSAGE: Qt version 5.9.5
Project MESSAGE: Windows build
git: ‘Hobson/qgroundcontrol/.git’ is not a git command. See ‘git --help’.
git: ‘Hobson/qgroundcontrol/.git’ is not a git command. See ‘git --help’.
git: ‘Hobson/qgroundcontrol/.git’ is not a git command. See ‘git --help’.
git: ‘Hobson/qgroundcontrol/.git’ is not a git command. See ‘git --help’.
Project MESSAGE: QGroundControl Development :
Project MESSAGE: Debug flavor
Project MESSAGE: Using Default QtLocation headers
Project MESSAGE: Using MAVLink dialect ‘ardupilotmega’.
Project MESSAGE: Skipping support for Zeroconf (unsupported platform)
Project MESSAGE: Skipping support for video streaming (GStreamer libraries not installed)
Project MESSAGE: Installation instructions here: https://github.com/mavlink/qgroundcontrol/blob/master/src/VideoStreaming/README.md
Project MESSAGE: This project is using private headers and will therefore be tied to this specific Qt module build version.
Project MESSAGE: Running this project against other versions of the Qt modules may crash at any arbitrary point.
Project MESSAGE: This is not a bug, but a result of using Qt internals. You have been warned!
Project MESSAGE: Qt version 5.9.5
Project MESSAGE: Windows build
git: ‘Hobson/qgroundcontrol/.git’ is not a git command. See ‘git --help’.
git: ‘Hobson/qgroundcontrol/.git’ is not a git command. See ‘git --help’.
git: ‘Hobson/qgroundcontrol/.git’ is not a git command. See ‘git --help’.
git: ‘Hobson/qgroundcontrol/.git’ is not a git command. See ‘git --help’.
Project MESSAGE: QGroundControl Development :
Project MESSAGE: Debug flavor
Project MESSAGE: Using Default QtLocation headers
Project MESSAGE: Using MAVLink dialect ‘ardupilotmega’.
Project MESSAGE: Skipping support for Zeroconf (unsupported platform)
Project MESSAGE: Skipping support for video streaming (GStreamer libraries not installed)
Project MESSAGE: Installation instructions here: https://github.com/mavlink/qgroundcontrol/blob/master/src/VideoStreaming/README.md
Cannot read C:/Users/Max Hobson/qgroundcontrol/user_config.pri: No such file or directory

It seems that there are some things that I’m missing besides the video support, which I don’t really care about, although I don’t know what the rest of it means. Furthermore, there are some errors when I try to run the program, such as these:

1:

2:

So, if I could get some help or pointers it would be much appreciated. Thanks for your attention.


#2

A little bit of an update: I downloaded the bluerobotics fork and now I have this as the output:


(Patrick José Pereira) #3

Hi @mjhl96,

First, you are running with the ARM (winrt_armv7_msvc2015) kit and not the x86.

This is a minimal tutorial if you want to compile QGC.

  1. To get the source code, you’ll need git to download it and update all submodules.
    1.1 Our last release have v3.2.4-BlueRobotics-Rev5 tag.

  2. It’ll be necessary to have Visual Studio 2015, if you are familiar with choco cli, can install it using choco install VisualStudio2015Community.
    2.1 You will need to install the c++ windows toolkit. Visual Studio → File → New → Project → Installed → Visual C++ → Install Visual C++ 2015 tools

  3. Install the gstreamer version 1.12
    3.1 gstreamer-1.0-devel-x86-1.5.2.msi
    3.2 gstreamer-1.0-x86-1.5.2.msi
    Make sure to select the complete installation instead of typical installation during the install process. The installer places them under C:\gstreamer, which is where the QGC build system will look for it.
    After installing this two .msi files, check if C:/gstreamer/1.0/x86/include/gstreamer-1.0 exist.

  4. And finally Qt here, right now we are using Qt 5.8 with the 32 bits version.

Now, it’ll be only necessary to select the MSVC2015 32bit version and update the compiler and debug.


#4

I’ve done as you said,and now I get this as the output when I try to start debugging:

I have other versions of Visual Studio besides the 2015 32 bit, does that have anything to do with this? And how is this error fixed? It seems strange because you can use the 2015 version just fine.

Thanks for your help.


#5

Ah, and I don’t know if I needed to update the submodules since I did a new installation of the source code with git, so I skipped out on that step, although I’ve tried to use the git submodule update command and I get this output:

So it seems unclear whether it did it properly or not.

As always, thanks for your attention.


(Patrick José Pereira) #6

You can check the QGC project file QGCCommon.pri (line 49 of our last release version) that you need to use one of this versions:
win32-msvc2010 | win32-msvc2012 | win32-msvc2013 | win32-msvc2015
This error shows that the versions that you are using is not compatible.

To check if you have the submodules, use git submodules status, or check if the folders:

'libs/mavlink/include/mavlink/v1.0'
'libs/mavlink/include/mavlink/v2.0'
'src/GPS/Drivers'

are populated.


#7

Well, I have the 32 bit version of VS2015, and 64 bit versions of 2013 and 2010, although I’ve selected the 2015 version in QT, as for the submodules, I do have them, thus, I assume I have to check the settings in QT again?

P.D. As you can see in the image, VS2015 is under the 32bit program files folder.


(Patrick José Pereira) #8

Add a print function to check QMAKE_COMPILER_DEFINES value inside the qgc project, this will show the compiler version that you are using.