Setting up Qt Creator

Qt Creator is a cross-platform IDE available for different operating systems (Windows 7 or later, Linux32, Linux64, macOS 10.12 or later). The easiest way to get the IDE is to download and install Qt 5 that contains the Qt libraries, examples, documentation, and the necessary development tools.

If you already have Qt installed on your system, please ensure to use at least Qt Creator 4.9.1 due to bugs regarding software deployment via SFTP to remote linux devices in earlier versions. Otherwise please download the online installer as linked in section Qt related resources, execute it and install the MinGW 7.3.0 32 or 64 bit versions of Qt 5.12.9 or newer (don’t check the whole Qt 5.x.y item but select the mentioned MinGW version only) as well as the MinGW 7.3.0 32 or 64 bit component of the Developer and Designer Tools. See Fig. 3 for details.

../_images/qt-installation.png

Fig. 3 Selecting components during Qt installation

After the installation has completed, download and install the latest version of the InCore Framework SDK. All InCore-related downloads are available at our downloads servers as linked in section InCore SDK.

Now that all required software components are installed, the development environment needs to be set up and configured. After starting Qt Creator, first open the Tools dropdown menu and select the Options item which will bring up the options dialog. Choose Devices from the left handed menu and select the tab SSH. The dialog shown in Fig. 4 will appear. Now check the given paths to SSH-related executables and correct them if necessary.

../_images/qt-creator-options-devices-ssh.png

Fig. 4 Setting up SSH in Qt Creator options dialog

Then go back to the Devices tab and press the Add button on the right to add some new Generic Linux Device. Press Start Wizard in the appearing dialog box (Fig. 5).

../_images/qt-creator-options-add-device.png

Fig. 5 Adding a new Generic Linux Device

Now you have to configure the connection to the HUB-GM100 using the parameters shown in Fig. 6

../_images/qt-creator-new-device-connection.png

Fig. 6 Configuring connection parameters for HUB-GM100

Press Next to switch to the Key Deployment page. Press the Browse button to navigate to the SSH key you’ve created before (see chapter Installing and configuring SSH). Choose the private key file (by default id_rsa) and press Deploy Public Key afterwards. In case you are asked for a password, type incore.

Note

Credentials for file transfer via SFTP are: username incore / password incore.

Important

Make sure the SSH service has been started before via the terminal connection as described in section Logging in in the SIINEOS Manual. Otherwise no connection can be established and an error message appears as the public key cannot be deployed to the HUB-GM100.

Press Next and Finish afterwards. The new device configuration will then be created and the connection to the device will be tested (Fig. 7). Please don’t bother with the output that rsync could not be started since this feature is not required for working with the InCore SDK.

../_images/qt-creator-device-test.png

Fig. 7 Output of the Device Test

After being back in the Options dialog, please choose Kits from the left handed menu. In the appearing Kits page please select the auto detected desktop kit (in the tab Kits), and press Clone. Give the new kit a name (e.g. InCore), select Generic Linux Device as device type and select the device created in the step before. See Fig. 8 for reference. Apply all your changes and close the Options dialog.

../_images/qt-creator-kit-setup.png

Fig. 8 Setting up a custom kit with HUB-GM100 device

Congratulations, you’ve successfully configured Qt Creator for further app development with a HUB-GM100 gateway!

Attention

You’ll likely encounter problems in case you are using more than one HUB-GM100 for app development with the same computer and Qt Creator since the virtual USB network IP address is the same for all HUB-GM100 devices but the SSH host keys differ. In such cases SSH Host key errors appear and you’ll be warned about a possible man-in-the-middle attack or something similar when switching to another HUB-GM100. If that happens, please navigate to the folder where your SSH key is stored (by default .ssh in your user directory) and delete the file known_hosts. Afterwards everything should work as usual. Everytime you connect to another HUB-GM100 device the procedure needs to be repeated. To avoid these inconveniences consider connecting to all HUB-GM100 devices via Ethernet instead of USB and using unambiguous IP addresses.