日立製作所製SHマイコン用コンパイラ使用時の注意事項


ISaGRAF Ver.3で日立製作所製のSHマイコン(SuperHシリーズ)用のターゲットを開発している。コンパイラは日立総合開発環境をしている。
taio0tab.c ファイルをコンパイルすると "appli.h" がないというエラーが発生する。エラーメッセージは
Phase: SH C/C++ Compiler, File: [ターゲットのディレクトリ名]\SRC\taio0tab.c,dependency scan error
[ターゲットのディレクトリ名]\SRC\taio0tab.c 73: DC201 (E) A header file does not exist 'appli.h


"Build All"(全ファイルのコンパイル)を行うとこのエラーは出ないが、部分コンパイル(新しく変更された部分のみコンパイル)の設定を行うとこのエラーが出る。

原因
日立総合開発環境の仕様によるものです。

ISaGRAF Ver.3では、appli.h ファイルは、コンパイラ型ターゲットの生成に必要なファイルで、ソース中でインクルードしています。
一方、インタプリタ型のターゲットを生成する場合は、プリプロセッサの #ifdef 文などで appli.h はインクルードしないようになっています。そのため、通常はこのような問題が起きることはありません。
日立総合開発環境では、このようなプリプロセッサの #ifdef の構成に関係無く、ソース中に #include があればプロジェクトに必要なファイルと見なしてしまいます。生成時にこのような依存関係をもつファイルが無いと、上記のエラーが発生します。

対処
"Build All"(全ファイルのコンパイル)を行なってください。

最終更新:
2008-07-30 10:45
改訂:
1.0
評価点数: 4 (1 件の投票)
Chuck Norris has counted to infinity. Twice.

最も人気の FAQ RSS

  1. LD言語で、ある接点がFALSEの場合、それ以降のファンクションブロックを実行しないように出来るか? (44501 回の閲覧)
  2. SFC要素の「ステップ」と「トランジション」の意味と役割を教えてください。 (43327 回の閲覧)
  3. ISaGRAF WorkbenchをWindows 7で使用するにはどうしたらよいでしょうか? (40902 回の閲覧)
  4. ISaGRAFはIEC1131-3のシステム定義に準拠しているか? (38975 回の閲覧)
  5. PLCプログラムをより早く動かすにはどうすればよいですか? (38794 回の閲覧)
  6. LD言語で、立ち上がり・立ち下がりの出力はあるか? (36831 回の閲覧)
  7. VxWorksターゲットにおける変数管理の留意点について (36348 回の閲覧)
  8. 日立製作所製SHマイコン用コンパイラ使用時の注意事項 (35535 回の閲覧)
  9. Cファンクション/ファンクションブロックの"Hidden" パラメータとはどのようなものか (35510 回の閲覧)
  10. FBD/LD言語で同じ行に複数の演算がある場合の実行順序は? (33485 回の閲覧)

最近の FAQ RSS

  1. ファンクションブロックはネストできますか。 (2016-08-05 15:07)
  2. Cファンクション/ファンクションブロックの"Hidden" パラメータとはどのようなものか (2015-01-30 14:24)
  3. 前のISaGRAFで作成したプロジェクトをインポートしたら、コメントが文字化けを起こしています。 (2014-05-07 06:52)
  4. 前のバージョンで作成したプロジェクトは読み込めますか。 (2014-03-07 07:46)
  5. ISaGRAFでコンフィグレーション、リソースそれにPOUはそれぞれいくつ作成できますか。 (2014-03-07 02:06)