0

我正在使用一个相当广泛的 C++ 项目。只是为了好玩,我想我会尝试一个非常简单的 swig 示例,它仅使用项目中的标头来构建 python 模块。

Swig 正常运行并创建了一个 project_wrap.cxx 文件。但是,当我尝试编译该文件并将其与项目的其余部分链接时,我遇到了错误:

似乎它们主要与 MS COLeDateTime 相关:

Error   14  error C2061: syntax error : identifier 'COleDateTime'   

由以下声明产生:

void   SetStartTime     (COleDateTime dt    )  {m_simstart_time = dt;  }

或来自 IntelliSense:

194 IntelliSense: identifier "COleDateTime" is undefined

我认为解决方法是使用 windows.i 文件,但是有人对此有一些提示/经验/示例吗?

4

1 回答 1

2

添加

%{
   #include "the_coledatetime_header.h"   // whatever the header is
%}

到你的 .i

#include 将添加到您的 project_wrap.cxx 中并且应该编译。检查http://www.swig.org/Doc2.0/SWIGDocumentation.html#Preprocessor_delimiters了解更多信息。

于 2012-11-28T08:42:10.397 回答