インテル® System Studio Wind River* Linux* 向け入門ガイド

同カテゴリーの次の記事

インテル® System Studio を利用した第 4 世代インテル® Core™ プロセッサーのデジタル・セキュリティーと監視機能の活用

この記事は、インテル® デベロッパー・ゾーンに掲載されている「Get Started with Intel® System Studio for Wind River* Linux*」の日本語参考訳です。

はじめに

インテル® System Studio は、組込みおよびモバイル開発者向けの開発ツールスイートです。インテル® C++ コンパイラー組込み Linux* 向け、インテル® インテグレーテッド・パフォーマンス・プリミティブ Linux* 版、インテル® マス・カーネル・ライブラリー Linux* 版など、さまざまなコンポーネントが含まれています。

Wind River* Linux* は、業界で広く使用されている組込みデバイス向けの Linux* オペレーティング・システムです。組込みデバイス向けに最適化された Linux* プラットフォームを構築するクロス開発環境を提供します。

最新のインテル® C++ コンパイラーは、Wind River* Linux* 5.0 (Linux* および Windows*)、6.0 (Linux* のみ) ターゲット向けのクロス開発をサポートしています。この記事では、インテル® C++ コンパイラーを使用して、Wind River* Linux* 5.0 ベースのターゲット組込みシステム向けにアプリケーションをビルドし、実行する方法を説明します。

必要条件

  1. 作業を開始する前に、次のハードウェアを用意します。
    • 開発用のホストマシン
      • この例では、Red Hat* Enterprise Linux* Server 6.3 を搭載したインテル® Xeon® プロセッサー E5-2680 (2.70GHz) ベースのマシンを使用します。
    • Wind River * Linux * 5.0 を搭載したターゲットマシン
      • この例では、QEMU X86 64 ビット・エミュレーターでテスト・アプリケーションを実行します。
  2. 次のソフトウェアをホストマシンにインストールします。
    • インテル® System Studio: l_cembd_p_2014.x.yyy.tgz (x はリビジョン番号、yyy はりリース番号)

      ツールスイートのパッケージを書き込みアクセス権のあるディレクトリーに展開します。

      > tar -zxvf l_cembd_p_2014.0.yyy.tgz
      >cd l_cembd_p_2014.0.yyy
      >install.sh
      

      デフォルトでは、インテル® System Studio のすべてのコンポーネントは /opt/intel/system_studio_2014.x.yyy にインストールされます。

    • Wind River* Linux* 製品:
      http://www.windriver.com/products/linux/ (英語) から Wind River* Linux* 5 と必要な Wind River* Linux* ツールをダウンロードします。

      この例では、Wind River* ソフトウェアは /home/wruser/WRLinux_5.0 ($WIND_HOME) ディレクトリーに、Wind River* Linux* 製品は /home/wruser/WRLinux_5.0/wrlinux-5 ディレクトリーにインストールされています。

      Wind River* は、インテル・ベースの各種ボードをターゲットとする Linux* プラットフォームとアプリケーションを開発できます。ここでは、事前準備が簡単な qemux86-x64 emulator を使用します。

    • コマンドラインで QEMU プラットフォーム・プロジェクトをビルドします。
      cd $WIND_HOME
      mkdir ccache
      mkdir sstate
      ./wrenv.sh -p wrlinux-5
      export BSP=qemux86-64
      export ROOTFS=glibc_std_sato
      export PROJECT=$WIND_HOME/workspace/wrl_`echo $BSP`_`echo $ROOTFS`_prj
      mkdir -p $PROJECT
      cd $PROJECT
      $WIND_LINUX_CONFIGURE --enable-rootfs=$ROOTFS \
          --enable-kernel=standard --enable-board=$BSP \
          --enable-parallel-pkgbuilds=8 --enable-jobs=8\
          --enable-ccache=yes --with-ccache-dir=$WIND_HOME/ccache \
          --with-ccache-size=5G \
          --with-sstate-dir=$WIND_HOME/sstate
      $ make
      

      ビルド後、次のメッセージが表示され、QEMU ファイルシステムが export/dist に書き込まれます。

      Extracting file system into export/dist
      Creating directory $WIND_HOME/workspace/wrl_qemux86-64_glibc_std_sato_prj/export/dist
      NOTE: Populating toolchain links in
      $WIND_HOME/workspace/wrl_qemux86-64_glibc_std_sato_prj/bitbake_build/tmp/sysroots/x86_64-linux/usr/bin/toolchain.
      NOTE: Toolchain binaries pattern:
      $WIND_HOME/workspace/wrl_qemux86-64_glibc_std_sato_prj/layers/wr-toolchain/4.6-60/bin/i686-wrs-linux-gnu*
      SDK image successfully extracted to 
      $WIND_HOME /workspace/wrl_qemux86-64_glibc_std_sato_prj/export/dist
      
    • make start-target コマンドを実行してシミュレーターを起動します。
      ログイン ID は root、パスワードも root です。

コマンドラインからインテル® C++ コンパイラーを使用する

次の手順に従って、Wind River* Linux* ターゲット向けアプリケーションをビルドします。

  1. Linux*ホスト上で 2 つの環境変数 WRL_TOOLCHAIN と WRL_SYSROOT を設定します。
    export WIND_HOME=/home/wruser /WRLinux_5.0
    export WRL_TOOLCHAIN=$WIND_HOME /wrlinux-5/layers/wr-toolchain/4.6-60
    export WRL_SYSROOT=$WIND_HOME/workspace/wrl_qemux86-64_glibc_std_sato_prj/bitbake_build/tmp/sysroots/qemux86-64
    
  2. クロスコンパイルを実行します。
    source /opt/intel/system_studio_2014.x.xxx/bin/iccvars.sh ia32_intel64
    icc -platform=wrl50 matrix_multiplication_y.c
    ls
    ./a.out
    

    注: インテル® System Studio には、sysroot サポートと GNU* ツール名プリフィックス機能が実装されています。詳細は、コンパイラー・ドキュメントと「関連情報」の 1 を参照してください。

  3. qemux86-x64エミュレーターでアプリケーションを起動して実行します。
    qemux86-x 64 ファイルシステムはホストマシン上にあるため、実行ファイルを簡単にコピーできます。
    cp a.out  $WIND_HOME/workspace/wrl_qemux86-64_glibc_std_sato_prj/export/dist/home/

インテル® C++ コンパイラー Wind River* Linux* 向けのサポートについては、インテル® System Studio のサポートページを参照してください。

インテル® System Studio の詳細は、https://www.isus.jp/article/intel-software-dev-products/intel-system-studio/ を参照してください。

関連情報 (英語)

  1. http://software.intel.com/en-us/articles/improved-sysroot-support-in-intel-c-compiler-for-cross-compile
  2. http://software.intel.com/en-us/articles/building-yocto-applications-using-intel-c-compiler

コンパイラーの最適化に関する詳細は、最適化に関する注意事項を参照してください。

関連記事

  • インテル® System Studio を使用する理由インテル® System Studio を使用する理由 この記事は、インテル® デベロッパー・ゾーンに掲載されている「Should I use Intel® System Studio?」の日本語参考訳です。 はじめに インテル® System Studio は、インテル® […]
  • インテリジェント・システムと組込みデバイス向けソフトウェア開発ツールの使用法インテリジェント・システムと組込みデバイス向けソフトウェア開発ツールの使用法 この記事は、インテル® デベロッパー・ゾーンに掲載されている「How to use Software Development Tools Targeting Intelligent Systems and Embedded Devices」 […]
  • SVEN (System Visible Event Nexus) の概要SVEN (System Visible Event Nexus) の概要 この記事は、インテル® デベロッパー・ゾーンに掲載されている「SVEN Overview」の日本語参考訳です。 SVEN とは? SVEN は、カーネル、ユーザーそしてファームウェアで実行中のユニットからのイベントをトレースして記録するための基盤と API です。SVEN は航空機のフライトを記録する “ブラックボックス” […]
  • インテル® System Studio 2014 – JTAG デバッガーがさらに多くのプロセッサー・ファミリーをサポートインテル® System Studio 2014 – JTAG デバッガーがさらに多くのプロセッサー・ファミリーをサポート この記事は、インテル® デベロッパー・ゾーンに掲載されている「Intel® System Studio 2014 – JTAG Debugger Supports More Processor Families」の日本語参考訳です。 はじめに これまで、インテル® System Studio の JTAG […]
  • 組込み開発ツール組込み開発ツール 電力、信頼性、パフォーマンスに関する詳細が得られる「モノのインターネット(IoT)」のためのソフトウェア・ツール このページでは組込み開発ツールに関する記事や参考資料へのリンクをまとめています。http://software.intel.com/en-us/embedded-development-tools […]