0

我已经下载并安装了 OpenOffice SDK 3.3.x,但我找不到与 *.idl 文件对应的头文件( *.hpp 或 hxx )文件。(idl/com/.../) 目录下有 *.idl 文件。在包含目录 (include/com/...) 下没有对应的 *.hpp 或 *.hxx 包含文件。我查看了 C++ 示例,它们都包含诸如

#include <cppuhelper/bootstrap.hxx>
#include <com/sun/star/bridge/XUnoUrlResolver.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>

我收到编译器错误说“无法打开包含文件:'com/sun/star/uno/Exception.hpp':没有这样的文件或目录”......这是真的,因为包含目录下没有 Exception.hpp 并且我也找不到任何其他 X***.hpp。但是 lib/ 目录下有 *.lib 文件。

所以我的问题是我应该从 *.idl 文件生成 *.hpp 文件吗?使用 cppumaker.exe 吗?

还是只是我的安装已损坏?

请帮助解决这个问题。我真的很感谢你们的帮助。

问候

4

1 回答 1

0

好吧,我想您可以从 idl 生成标头。您使用的工具将取决于 ORB 和目标编译器。例如,使用 MSVC++ 7 的 TAO ORB。您可以将命令放在 .cmd 文件(Windows)中,并将其添加为您喜欢的预构建步骤。

set path=%path%;..\..\thirdparty\ACE_wrappers_1.7.1\bin;..\..\thirdparty\ACE_wrappers_1.7.1\lib;
set TAO_ROOT=..\..\thirdparty\ACE_wrappers_1.7.1\tao
set ACE_ROOT=..\..\thirdparty\ACE_wrappers_1.7.1\ace

tao_idl -Cw -GT foo.idl
tao_idl -Cw -GT bar.idl
tao_idl -Cw -GT foobar.idl

注意:这并不特定于您所询问的 OpenOffice SDK。我对此没有任何经验。

于 2011-04-26T12:15:41.720 回答