0

製造元が MS Visual C++ で記述された SDK を提供しているデバイスへの Matlab インターフェイスを作成しようとしています。次のように、列挙型を含む SDK のヘッダーを C ファイル (mexfunction を含む) に含めました。

typedef enum {
 GROUP_SYSTEM_COMMAND = 0,
 GROUP_SLM_CURRENT,  // 1
 GROUP_SLM_HISTORY,  // 2
 GROUP_SLM_OVERALL,  // 3
 GROUP_STAT_HISTORY, // 4
 GROUP_STAT_OVERALL, // 5
 GROUP_OBA11,        // 6
 GROUP_OBA13,        // 7
 GROUP_DOSE_1,       // 8
 GROUP_DOSE_2,       // 9
 GROUP_EVENT_1,      // 10
 .......etc

MEX ファイルを生成するために MATLAB で C ファイルをコンパイルすると、次のように、列挙型の要素ごとにいくつかのエラーが発生します。

エラー \LxT\useLxt.c: \LxT\LxT831.h: 713 \LxT\LxT831.h で以前に宣言された `GROUP_DOSE_1' の再宣言 713

エラー \LxT\useLxt.c: \LxT\LxT831.h: \LxT\LxT831.h 714 で以前に宣言された `GROUP_DOSE_2' の 714 再宣言 ....

紛らわしい部分は、再宣言が同じ行にあることです。また、matlab が lcc c コンパイラを使用している間、これは cpp コードであることに注意してください。ヒント/提案はありますか?

4

0 に答える 0