CDT/RSEによるクロスコンパイルとリモートデバッグ生産性向上への道 Eclipseで行うC/C++開発(3)(3/4 ページ)

» 2007年10月30日 00時00分 公開
[小泉健(NEC) ,@IT MONOist]

Remote System Explorer(RSE)の概要

 RSEはリモートマシン上のデーモンと連携して、リモートマシンのファイルシステムやプロセスに対する操作を行うことを可能にするプラグインです。

 いままでファイル転送ソフトやターミナルソフトウェアで行っていたことをEclipse上で行えるようになります。


メモ

RSEはEclipse DSDP(Device Software Development Platform)プロジェクトのサブプロジェクトである「Target Management」が提供しているプラグインです。

DSDPプロジェクトについては日本でも「Japan WG DSDP Workshop」が発足し、以下のようなDSDPプロジェクトに対応する日本側での議論やコミュニケーションの場を提供しています。

  • DSDPプロジェクトについて日本語で話し合える場の提供
  • DSDPに関する最新情報やノウハウの共有
  • 日本側要求事項の取りまとめ

DSDP Workshop MLにはどなたでも参加できるので、これを機会に参加してみてはいかがでしょうか?


 RSEもCDTと同様に専用のパースペクティブ「Remote System Explorer」を提供しています。Remote System Explorerはリモートマシンへのアクセスを提供するパースペクティブです。このパースペクティブを利用することで、リモートマシンのファイルシステムやプロセス情報をツリー形式やテーブル形式で表示したり、リモートマシン上のファイル、フォルダに対してさまざまな操作を行ったりすることができます。

Remote System Explorer(RSE)の概要 画面11 Remote System Explorer(RSE)の概要
※注:RSEではリモートシステムへの接続プロトコルとして、ssh、ftp、dstore(RSE独自プロトコル)をサポートしていますが、使用するプロトコルによって、利用できる機能に違いがあります。プロトコルごとに利用できる機能は、下記の一覧のとおりです。利用したい機能に合わせて接続プロトコルを選択してください。

名前 ssh ftp dstore(dserver)
リモートマシン上のファイル参照
アーカイブの展開参照、マージなど × ×
シェル(コマンド)の実行 ×
リモートシステム上での検索
フィルター
プロセス表示 × ×
リモートデバッグ ×
接続プロトコル毎の機能比較



 今回は、リモートのRed Hat Linuxマシンにdstoreプロトコルで接続し、リモートデバッグを行う方法について紹介します。

リモートサーバとの接続設定

 それでは、CDTとRSEを利用して、リモートのLinuxマシンのアプリケーションをWindowsのEclipseにてリモートデバッグを行う手順を説明していきます。

 今回、紹介するリモートデバッグ環境は以下のとおりです(図2)。

今回のリモートデバッグ環境 図2 今回のリモートデバッグ環境
※注:以下、手順を確認するためにはリモートマシン上でDstore Serverが起動している必要があります。Dstore Serverのインストール方法、起動方法については連載第1回の「Eclipse開発環境のセットアップ」を参照ください。


 まずは、パースペクティブを「Remote System Explorer」に切り替えます。メニューの[ウィンドウ]−[パースペクティブを開く]−[その他]を選択し、「Remote System Explorer」を選択して、[OK]ボタンをクリックしてください。

 初期の「Remote System Explorer」では、以下のように[リモートシステム]ビューに「Local」の情報のみが表示されます(「Local」とは、Eclipseを起動したマシンに関する情報です)(画面12)。

「Remote System Explorer」の[リモートシステム]ビュー 画面12 「Remote System Explorer」の[リモートシステム]ビュー

 ここで、リモートマシンへの接続を新規に作成する必要があります。RSEでは、リモートマシンの接続情報を「接続名」で管理します。以下のように新しい接続名を作成します。

 メニューの[ファイル]−[新規]−[その他]を選択します。新規ウィザードが起動するので、[リモートシステムエクスプローラ]−[接続]を選択して、[次へ]をクリックします(画面13)。

新規ウィザード 画面13 新規ウィザード

 システムタイプ(接続タイプ)の画面が表示されます。今回はLinuxマシンへdstoreプロトコルで接続するため、「Linux」を選択して[次へ]をクリックします。

 「リモート Linux システム接続」の画面では、接続名に任意の名前(ここでは“sample”とします)、ホスト名に接続Linuxホスト名(IPアドレス)とオリジナルの接続名を入力し、[終了]ボタンをクリックします(画面14)。

[新規生成]ダイアログ 画面14 [新規生成]ダイアログ

 これで、Localに加えて「sample」という接続名が[リモートシステム]ビューに追加されます(画面15)。

接続名が[リモートシステム]ビューに追加 画面15 接続名が[リモートシステム]ビューに追加

 それでは、作成した接続名「sample」に接続します。「sample」を右クリックして「接続」を選択してください。

 下記のような接続ダイアログが表示されるので、ユーザーIDとパスワードを入れて、ユーザーIDの保存、パスワードの保存にもチェックをしたら、[OK]ボタンをクリックします(画面16)。

接続名が[リモートシステム]ビューに追加 画面16 接続名が[リモートシステム]ビューに追加

 画面17のように「sample」の右上に接続マークが表示され、リモートマシンに接続されます。

右上に接続マークが表示される 画面17 右上に接続マークが表示される
※注:dstoreプロトコルで接続するためにはリモートマシンでDstore Serverが起動している必要があります。dstoreプロトコルが起動していない場合には、画面18のような接続エラーが表示されます。

接続エラー 画面18 接続エラー

このエラーが表示された場合には、dstoreプロトコルを起動してから、再度接続を試してみてください。

Dstore Serverが起動しているかどうかは、以下のコマンドで確認できます。

% ps -ef | grep RseServer 


 リモートマシンへの接続後は、Eclipse上からリモートマシンのファイルシステムやプロセスをローカルマシン同様に参照できるようになります(画面19)。

リモートマシンのファイルシステムやプロセスを参照できる 画面19 リモートマシンのファイルシステムやプロセスを参照できる

 リモートマシンから切断するときは、接続名「sample」を右クリックし、[切断]を選択してください。

Copyright © ITmedia, Inc. All Rights Reserved.