从接口文件生成包装器时出现#define错误

时间:2013-11-27 08:38:54

标签: java c++ swig

我正在为第三方代码创建包装器,其中包括#define,如下所示,它给出如下所示的错误,swig给出错误:输入(3)中的语法错误。我也尝试在接口文件中复制下面的常量,但没有运气。

#ifndef DCMTK_DECL_EXPORT
#define DCMTK_DECL_EXPORT
#endif

#ifndef DCMTK_DECL_IMPORT
#define DCMTK_DECL_IMPORT
#endif

#ifdef dcmdata_EXPORTS
#define DCMTK_DCMDATA_EXPORT DCMTK_DECL_EXPORT
#else
#define DCMTK_DCMDATA_EXPORT DCMTK_DECL_IMPORT
#endif

1 个答案:

答案 0 :(得分:0)

目前还不清楚没有更多信息,但我的水晶球认为你可能在Windows上,而DCMTK_DECL_EXPORT被定义为__declspec(dllexport)。 SWIG不了解Windows __declspec语句,但如果您在SWIG接口文件中%include <windows.i>,则会正确忽略它。