1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
|
// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
/*!
\page creator-developing-generic-linux.html
\previouspage creator-reference.html
\ingroup creator-reference-devices
\title Developing for remote Linux devices
\quotation
\l {Remote Linux}{How to: Develop for remote Linux}
\endquotation
\brief Connect generic Linux devices to the computer to run,
debug, and analyze applications built for them from \QC.
If you have a toolchain for building applications for embedded Linux
devices installed on the computer, add it to a \l{Managing kits}{kit}
with the device type \uicontrol {Remote Linux Device} to
build applications for and run them on the devices.
Use a wizard to connect remote Linux devices to the computer. You can edit
the settings later in \preferences > \uicontrol Devices > \uicontrol Devices.
\image {qtcreator-preferences-devices-remote-linux.webp} {Remote Linux device in the Devices tab in Devices preferences}
To automatically connect to the remote Linux device when \QC starts, select
\uicontrol {Auto-connect on startup}.
//! [openssh]
\section1 Protecting device connections
To protect the connections between \QC and a device, use \l{OpenSSH} for
remote login over the SSH protocol. The OpenSSH suite is not delivered with
\QC, so download it and install it on the computer. Then, configure the paths
to the tools in \QC.
You need either a password or an SSH public and private key pair for
authentication. If you do not have an SSH key, use the \c ssh-keygen
tool to create it in \QC.
\note \QC does not store passwords, so if you use password authentication,
you may need to enter the password on every connection to the device,
or, if caching is enabled, at every \QC restart.
If you frequently run into the timeout, consider using key-based
authentication. Create an SSH key in \QC with the \c ssh-keygen tool.
On \macos and Linux, go to \preferences > \uicontrol Devices > \uicontrol SSH
and increase the time (in minutes) for sharing an SSH connection in the
\uicontrol {Connection sharing timeout} field. Windows does not support
shared connections.
\image {qtcreator-ssh-options.png} {SSH tab in Devices preferences}
//! [openssh]
\sa {Add Docker devices}, {Remote Linux}{How to: Develop for remote Linux},
{Run in Qt Application Manager}, {Remote Linux Deploy Configuration},
{Remote Linux Run Settings}
*/
/*!
\page creator-how-to-connect-remote-linux.html
\previouspage creator-how-tos.html
\ingroup creator-how-to-remote-linux
\title Connect remote Linux devices
Create connections between generic Linux devices and \QC to run, debug, and
analyze applications on them.
To configure connections between \QC and a remote Linux device:
\list 1
\li Make sure that your device can be reached via an IP address.
\li Go to \preferences > \uicontrol Kits > \uicontrol {Qt Versions}.
\li Select \uicontrol Add to add the Qt version for embedded Linux.
\li Go to \uicontrol {Preferences} > \uicontrol Kits >
\uicontrol Compilers.
\li Select \uicontrol Add to add the compiler for building the
applications.
\li Go to \uicontrol {Preferences} > \uicontrol Devices >
\uicontrol Devices.
\li Select \uicontrol Add to add a remote Linux device.
\li Go to \uicontrol {Preferences} > \uicontrol Kits.
\li Select \uicontrol Add to add a kit for building for the device.
\li Select the Qt version, compiler, and device that you added above.
\li In \uicontrol {Run device}, select \uicontrol {Remote Linux Device}
in \uicontrol {Type}, and then select the actual device to run on in
\uicontrol {Device}.
\li To specify build settings:
\list 1
\li Open a project for an application you want to develop for the
device.
\li Select \uicontrol Projects > \uicontrol {Build & Run} to enable
the kit that you specified above.
\endlist
\li Go to \uicontrol {Run Settings} to specify run settings.
Usually, you can use the default settings.
\li When you run the project, \QC deploys the application as specified by
\uicontrol {Deploy Settings}.
\endlist
\sa {Remote Linux}{How to: Develop for remote Linux},
{Manage kits}{How to: Manage kits}, {Developing for Remote Linux Devices},
{Remote Linux Deploy Configuration}, {Remote Linux Run Settings}
*/
/*!
\page creator-how-to-add-remote-linux.html
\previouspage creator-how-tos.html
\ingroup creator-how-to-remote-linux
\title Add remote Linux devices
Create connections between generic Linux devices and \QC to run, debug, and
analyze applications on them.
\image {qtcreator-preferences-devices-remote-linux.webp} {Remote Linux device in the Devices tab in Devices preferences}
\caption Remote Linux Device preferences
\include qtcreator-add-linux-device.qdocinc {add linux device} {Remote Linux Device}
\sa {Remote Linux}{How to: Develop for remote Linux},
{Debug remotely with GDB}, {Developing for Remote Linux Devices},
{Remote Linux Deploy Configuration}
*/
/*!
\page creator-how-to-build-on-remote-linux.html
\previouspage creator-how-tos.html
\ingroup creator-how-to-remote-linux
\title Build applications on remote Linux devices
In addition to building applications \e {for} a generic Linux device, you can
use the toolchain on the device to build the applications \e {on} the device.
\include creator-how-to-build-on-remote-devices.qdocinc {build on remote devices} {remote Linux device}
\sa {Add CMake tools}, {Remote Linux}{How to: Develop for remote Linux},
{Manage kits}{How to: Manage kits}, {Developing for Remote Linux Devices},
{Remote Linux Deploy Configuration}, {Remote Linux Run Settings}
*/
|