CLion 2019.2 Help

Remote Development

There are three options for remote development in CLion, Full Remote Mode, Remote Debug via GDB/gdbserver, and WSL, each targeting a subset of remote development setups. To help you compare these three options and choose the most suitable one, we summarized their details in the tables given below. Learn more from our webinar Remote Development with CLion and the articles dedicated to each option.

System and IDE configuration

Full Remote ModeWSLRemote GDB/gdbserver
Local OS

macOS / Linux / Windows

Windows

macOS / Linux / Windows

Remote OS

Linux

Certain Linux distributions

Any OS supporting gdbserver

Connection protocol

SSH

SSH

TCP / UDP or serial line

Required tools

rsync for macOS / Linux clients
tar for Windows clients

-

gdbserver on target

Sources location

Locally

Locally

Locally
Symbol file also placed locally

Synchronization

Automatic
Manual resync of header search paths

Not required

Manual

Building

Remotely

On WSL

Not specified

Runing
Debugging

Remotely

On WSL

Program runs remotely under gdbserver;
CLion's GDB connects to the running process
and debugs it locally

Project-level settings

Full Remote ModeWSLRemote GDB/gdbserver
Project format

CMake

CMake / Compilation database

Any

Toolchain

Remote

WSL

Not specified

Path mappings

Created automatically,
customizable in deployment entry

Not required

Not created automatically,
should be set up in run/debug configuration

Steps of the workflow

Full Remote ModeWSLRemote GDB/gdbserver
  1. Create a Remote toolchain:
    - provide credentials and check the connection,
    - wait for tools detection, provide the paths manually if required.

  2. Set the Remote toolchain as default
    or create an associated CMake profile.

  3. If needed, adjust path mappings in the deployment entry.

  4. Use the default profile or select the profile from step 2 for build, run, and debug.

  1. Configure WSL.

  2. Create a WSL toolchain and provide credentials.

  3. Set the WSL toolchain as default
    or create an associated CMake profile.

  4. Select the default profile or the profile from step 3 for build, run, and debug.

  1. Place the binary on the remote machine and symbol file on the local machine.

  2. In CLion, create a
    GDB Remote Debug configuration:
    - provide the symbol file location,
    - specify connection details,
    - set up path mappings.

  3. Launch the program under gdbserver on the remote machine.

  4. In CLion, debug the configuration created on step 2.

Last modified: 16 September 2019