Intel System Studio 2018 Getting Started Guide

Getting Started with Application Development Using Intel® System Studio 2018 for Windows* OS Host and Linux* OS Target

Explore the Build Components

Windows* Host Linux* Target Application Development in Eclipse*

Intel® System Studio provides two Eclipse* based workflows for developing Windows* Host Linux* Target applications using the Intel® C++ Compiler.

To get started, complete the following prerequisites. Then, continue to the Create a Project to Cross Compile for Linux* Targets section for instructions.

Prerequisites

Create a Target Connection Using Root Privileges

Applications that use MRAA/UPM libraries need to be run with root privileges so that they can control the hardware (GPIOs, I2C and SPI buses). Follow the steps in this section to create the target connection and ensure that for all future connections, your application will run as root.

To use TCF

The following steps are needed to use TCF regardless of MRAA/UPM usage.

  1. Connect both the host and the target system to the network
  2. Install OpenSSH server on the target: sudo apt install openssh-server

For a Linux* or macOS* host

  1. Generate the key with an empty passphrase:

    ssh-keygen -t rsa -f ~/.ssh/id_rsa_tcf

    Press Enter when prompted for a passphrase.

  2. Copy public key to the target: scp ~/.ssh/id_rsa_tcf.pub {username}@{target_host}:
  3. Connect to the target system: ssh {username}@{target_host}
  4. Run sudo su - on the target system
  5. Create ~/.ssh directory if it doesn't already exist: mkdir ~/.ssh
  6. Update ~/.ssh directory permissons to 700: chmod 700 ~/.ssh
  7. Add public key to the ~/.ssh/authorized_keys file: cat ~{username}/id_rsa_tcf.pub >> ~/.ssh/authorized_keys
  8. Next, configure the TCF connection. See the instructions in the Configure the TCF connection section below.

For a Windows* host

  1. Install PuTTY SSH client: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

  2. Launch the PuTTY Key Generator using the puttygen.exe file

  3. Click the Generate button (with all default settings intact) to generate keys

  4. Save the private key to your local drive: C:\temp\linux_private_key.ppk

    Keep the PuTTY Key Generator open for the next steps.

  5. Run PuTTY and connect to the target system
  6. Run sudo su - on the target system
  7. Create ~/.ssh directory if it doesn't already exist: mkdir ~/.ssh
  8. Update ~/.ssh directory permissons to 700: chmod 700 ~/.ssh
  9. Create and open the ~/.ssh/authorized_keys file in a text editor: pico ~/.ssh/authorized_keys
  10. Copy the public key from the PuTTY Key Generator and paste it to the editor.

  11. Save the file and exit the editor.
  12. Next, configure the TCF connection. See the instructions in the Configure the TCF connection section below.

Configure the TCF connection

Follow these steps to configure the TCF connection using SSH keys.

  1. In the toolbar, click New Connection.
  2. Select Connection for building in a container and running on Linux and click Next.
  3. On the New Connection window, enter a Connection Name and IP address. Click Finish.
  4. On the Login window, select the Public key login tab.
  5. For Username, enter root
  6. Browse to the Private Key:

    For Windows: The path is \temp\linux_private_key.ppk

    For Linux and macOS: The path is /home/{username}/.ssh/id_rsa_tcf

    Note

    For Linux Ubuntu you will need to press Ctrl + H to show hidden directories such as .ssh

CAUTION

When you connect to your target system this way, Intel System Studio copies a TCF agent to your target, which is listening for connections from any computer on your local network. The IDE target connection dialog asks for authentication credentials to facilitate transferring and starting the TCF agent on your target device; however, once running, the TCF agent does NOT require authentication to perform its actions. Therefore, any user that has network access to your target device can connect to it and use the TCF agent to run arbitrary code on your target device. If you start the agent as root as described in this section, then anyone with network access to your device can run arbitrary code on your device without any authentication.

Configure network proxy settings

Follow these steps to set up network proxy settings in Intel System Studio. If you're on an open network, skip these steps.

  1. Start Intel System Studio.
  2. Choose Window > Preferences > General > Network Connections to open the Network Connections page.
  3. From the Active Provider drop-down list, select Manual.
  4. Provide the appropriate proxy information for your network, as shown in the image below.
  5. Click OK.

Create a Project to Cross Compile for Linux* Targets

The instructions in this section use the Intel® C++ Compiler with the cross-compile workflow to create an application on a Windows* host to run on a Linux* target.

Note

For information about developing for an Android* target, see Building Native Android* Apps Using Intel® C++ Compiler in Android Studio*.

Step 1: Create a New Project

  1. In Eclipse*, click File > New > Project.

  2. Expand Application Development and then select Project to cross compile for Linux and Android targets.

  3. Click Next. The Create a New Project screen appears.

Step 2: Set Up the Cross-Build Options

  1. Select the GNU binary directory path. This will be added to the project's PATH environment variable.
  2. For GNU prefix, specify a string that prepends the name of the GNU tools called from the Intel® C++ Compiler. For information, click the on-screen link for a description of gnu-prefix.
  3. For Sysroot directory, specify the target root directory of headers and libraries. For information, click the on-screen link for a description of sysroot.

  4. Click Next.

  5. Finish creating the project.

Step 3: Select a Target Connection

The connection that your project uses when you run or debug the project is called the target connection. Projects in the Intel® System Studio use the currently selected target connection.

CAUTION

When you connect to your target system this way, Intel System Studio copies a TCF agent to your target, which is listening for connections from any computer on your local network. The IDE target connection dialog asks for authentication credentials to facilitate transferring and starting the TCF agent on your target device; however, once running, the TCF agent does NOT require authentication to perform its actions. Therefore, any user that has network access to your target device can connect to it and use the TCF agent to run arbitrary code on your target device.

  1. Select an existing target connection or, if this is your first project, create a new connection:
    1. Existing connection: Click on the arrow next to the connection drop-down list and select a target connection.



    2. New connection for first project: Click New Connection.

      Finish setting up the new connection.

Step 4. Run or Debug a Project

  1. To run a project, click the Run button and select the name of your project from the drop-down list.

    To debug a project, click the Debug button and select the name of your project from the drop-down list.

  2. If a warning message about host authenticity displays, click Yes to upload and run your project.

  3. Your project runs.

    If the project does not exit automatically, click the red Terminate icon that appears on the Console panel.

For more information see:

Find More

Resource Description

Code Samples and Tutorials

Intel provides downloadable sample code and tutorials, which guide a new user through the basic product features: The sample code illustrates common scenarios, and the corresponding tutorials show how the build tools can be used to create and optimize code.

Intel® C++ Compiler Getting Started Guide

Introductory information and links to additional help for the Intel® C++ Compiler

Getting Started with Intel® Math Kernel Library

Introductory information and links to additional help for the Intel® Math Kernel Library

Intel® Threading Building Blocks

Introductory information and links to additional help for the Intel® Threading Building Blocks

Intel® Integrated Performance Primitives

Introductory information and links to additional help for the Intel® Integrated Performance Primitives

Intel® Data Analytics Acceleration Library

Introductory information and links to additional help for the Intel® Data Analytics Acceleration Library

Intel® System Studio Log Files

The Intel® System Studio installer writes log files to AppData\Local\Temp\Intel. These log file names start with intel.pset, end with a timestamp, and have the extension *.log. For example: C:\Users\auser\AppData\Local\Temp\Intel\intel.pset.root.auser_MOBL1_Thu_10_26_2017__02.28_PM.log

Intel® System Studio writes pairs of log files to a subdirectory in AppData\Local\Temp. The subdirectory name has the format iss_env_$USER_$TIMESTAMP. The session.log file contains environment settings. The eclipse.log file contains a session log. For example: C:\Users\auser\AppData\Local\Temp\iss_auser_20171026164410\eclipse.log and C:\Users\ auser\AppData\Local\Temp\iss_auser_20171026164410\session.log

Additional Documentation

Use the online documentation for the latest content.

A downloadable ZIP file containing all Intel® System Studio documentation is available for offline use from https://software.intel.com/en-us/articles/download-documentation-intel-system-studio-current-previous.

Intel® System Studio Product Page

Visit this page for support and the latest online documentation.

Legal Information

Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and/or other countries.

Microsoft, Windows, and the Windows logo are trademarks, or registered trademarks of Microsoft Corporation in the United States and/or other countries.

*Other names and brands may be claimed as the property of others.

© Intel Corporation