Understand 3.0 以降のバージョンでは、Objective-C/C++のコードの解析に対応しています。
今回は、Objective-C/C++の解析手順とプロジェクト設定方法についてご紹介したいと思います。
Objective-C 2.0 を含む以前のバージョンをサポートしています。
Objective-C/C++は、C/C++のStrictモードで解析することができます。
- Understandメインメニュー[プロジェクト]-[プロジェクトの設定]-[言語]設定で、C/C++のチェックボックスがオンで、Strictのオプションをオンにした状態で解析をおこなってください。
なお、弊社(テクマトリックス)が日本語環境へご提供しているモジュールは、Windows版とLinux版です。
そのため、Objective-C/C++のソースコードと関連するヘッダーファイルをWindows、またはLinux上にコピーして、解析する方法をご案内します。
Mac版についても、当記事の文末でご案内していますので、最後までご一読ください。
解析手順の例
- メニュー[ファイル]-[新規]-[プロジェクト]を選択し、[新規プロジェクト ウィザード]を起動します。
- [プロジェクト ファイルの作成]画面で任意の場所と名前を入力し、[次へ]ボタンを押下します。
- [言語]画面で、[C/C++]のチェックをオンにし、[Strict]を選択します。
- [ソースファイル]画面で、Objective-C/C++のファイルを追加し、[次へ]ボタンを押下します。
- [解析準備完了]画面で、[詳細設定]のオプションを選択し、[完了]ボタンを押下します。[プロジェクトの設定]画面が起動します。
- 下記のどちらかの方法で、Foundation.h等のヘッダーファイルを設定します。
- 左ツリーの[C++(Strict)]-[インクルード]-[フレームワーク]を選択します。
[新規]ボタンを押下し、[ディレクトリ]には、Mac OS Xのフレームワークのディレクトリ構造をそのままWindows環境にコピーし、そのディレクトリ構造のトップディレクトリを指定します。例)下記構成の場合、[ディレクトリ]にC:tmpを追加します。
- 左ツリーの[C++(Strict)]-[インクルード]-[フレームワーク]を選択します。
C:\tmp\
Foundation.framework\
Headers\
Foundation.h
NSString.h
...
- 左ツリーの[C++(Strict)]-[インクルード]を選択します。
[新規]ボタンを押下し、[ディレクトリ]には、Foundation.h, NSString.h等のヘッダーファイルを含むディレクトリを指定します。例)下記構成の場合、[ディレクトリ]にC:SystemLibraryHeadersを追加します。
- 左ツリーの[C++(Strict)]-[インクルード]を選択します。
C:\System\Library\
Headers\
Foundation\
Foundation.h
NSString.h
...
- [プロジェクトの設定]の[OK]ボタンを押下します。
- [プロジェクト設定の変更]ダイアログの[はい]ボタンを押下します。
また、Objective-C/C++のコードをWindows、またはLinux上で解析する場合においては、関連するヘッダーファイルをコピーすることに加えて、Understand のプロジェクトの設定で、以下を設定してください。
- [プロジェクト]-[プロジェクトの設定]-[C++(Strict)]-[ターゲット]
Arch : arm
Vendor : apple
OS : macosx / ios / darwin - [プロジェクト]-[プロジェクトの設定]-[C++(Strict)]-[インクルード]-[プリコンパイル済みヘッダー]に、プリコンパイル済みヘッダーファイル(例、プロジェクト名-Prefix.pch)を設定
なお、日本語環境におけるテクマトリックスのサポート対象外ですが、試用版としてMac版の「Understand 3.1日本語版(Build 700)」をご案内させていただくことも可能です。製品カスタマーセンターまでお問い合わせください。