Slice2cpp编译的报头文件无法打开的错误

2 cocoliu84 云龙九现 于 2013.10.17 16:42 提问

最近学习Ice,使用的是Ice3.4.2。在Ice用户手册的IceGrid那一节。有个Ripper的范例。其Slice文件如下:

module Ripper{
exception EncodingFialedException
{
string reason;
};

sequence Samples;

interface Mp3Encoder
{
Ice::ByteSeq encode(Samples leftSamples,Samples rightSamples)
throws EncodingFailedException;

     Ice::ByteSeq flush()
     throws EncodingFailedException;

};

interface Mp3EncoderFactory

Mp3Encoder* createEncoder();
};

};

我将其在cmd窗口运行
slice2cpp Ripper.ice
后出现Ice::ByteSeq错误的提示

通过访问ZeroC的官网,发现前面需要添加头文件
#include

我按照官网的说明做了改进。修改后的Slice文件如下:

#include <Ice/BuiltinSequences.ice>

module Ripper{
exception EncodingFialedException
{
string reason;
};

sequence Samples;

interface Mp3Encoder
{
Ice::ByteSeq encode(Samples leftSamples,Samples rightSamples)
throws EncodingFailedException;

 Ice::ByteSeq flush()
     throws EncodingFailedException;

};

interface Mp3EncoderFactory

Mp3Encoder* createEncoder();
};

};

再在cmd命令下运行,仍然出现can not open "Ice/BuiltinSequences.ice"文件的错误提示。

通过查找,有人说需要使用slice2cpp -I命令,将其添加到文件搜索目录里。我也试过,但还是不行。哪位达人可以帮帮我?

感激不尽

============================================

1个回答

按赞数排序 
hzx344407916
闲人hzx    2015.07.09 15:41

我也遇到了,解决方法如下:
ICE版本:ice3.6.0
待编译slice: callback.ice
slice2cpp在文件夹ZeroC\ice3.6.0\bin中
我在ZeroC\ice.3.6.0目录下运行指令
bin\slice2cpp -I. -Islice bin\callback.ice
生产的callback.h和callback.cpp文件在文件目录ZeroC\ice3.6.0下

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第 1 章引言 1 1.1 引言 1 1.2 Internet Communications Engine (Ice) 3 1.3 本书的篇章结 4 1.4 排字约定 4 1.5 源码示例 5 1.6 联系作者 5 1.7 Ice 支持 5 第 Ice 综述 7 第 2 章 Ice 综述 9 2.1 本章综 9 2.2 Ice 架构 9 2.3 Ice 服务 21 2.4 Ice 在架构上提供的好处 23 2.5 与 CORBA 的对比 25 第 3 章 Hello World 应用 33 3.1 本章综 33 3.2 编写 Slice 定义 33 3.3 编写使用 C++ 的 Ice应用 34 3.4 编写使用 Java的 Ice 应用 41 3.5 总结 48 第 Ice 核心概念 51 第 4 章 Slice 语言 53 4.1 本章综 53 4.2 引言 53 4.3 编译 54 4.4 源文件 57 4.5 词法规则 59 4.6 基本的 Slice 类型 62 4.7 用户定义的类型 63 4.8 接口、操作,以及异常 70 4.9 类 92 4.10 提前声明 106 4.11 模块 107 4.12 类型 ID 109 4.13 Object 上的操作 110 4.14 本地类 111 4.15 Ice 模块 112 4.16 名字与作用域 113 4.17 元数据 117 4.18 使用 Slice 编译器 118 4.19 Slice 与 CORBA IDL 的对比 119 4.20 总结 127 第 5 章 一个简单文件系统的 Slice 定义 137 5.1 本章综 137 5.2 文件系统应用 137 5.3 文件系统的 Slice 定义 138 5.4 完整的定义 140 第 6 章 客户端的 Slice-to-C++ 映射 143 6.1 本章综 143 6.2 引言 143 6.3 标识符的映射 144 6.4 模块的映射 144 6.5 Ice 名字空间 145 6.6 简单内建类型的映射 146 6.7 用户定义类型的映射 146 6.8 常量的映射 150 6.9 异常的映射 151 6.10 运行时异常的映射 154 6.11 接口的映射 154 6.12 操作的映射 161 6.13 异常处理 167 6.14 类的映射 169 6.15 slice2cpp 命令行选项 183 6.16 与 CORBA C++映射比较 184 第 7 章开发 C++ 文件系统客户 189 7.1 本章综 189 7.2 C++ 客户 189 7.3 总结 194 第 8 章 客户端的 Slice-to-Java 映射 197 8.1 本章综 197 8.2 引言 197 8.3 标识符的映射 198 8.4 模块的映射 198 8.5 Ice Package 199 8.6 简单内建类型的映射 200 8.7 用户定义类型的映射 200 8.8 常量的映射 204 8.9 异常的映射 205 8.10 运行时异常的映射 206 8.11 接口的映射 207 8.12 操作的映射 213 8.13 异常处理 219 8.14 类的映射 220 8.15 Package 224 8.16 slice2java 命令行选项 225 第 9 章开发 Java 文件系统客户 229 9.1 本章综 229 9.2 Java 客户 229 9.3 总结 233 第 10 章 服务器端的 Slice-to-C++ 映射 235 10.1 本章综 235 10.2 引言 235 10.3 服务器端 main函数 236 10.4 接口的映射 247 10.5 参数传递 249 10.6 引发异常 251 10.7 对象体现 252 10.8 总结 257 第 11 章开发 C++ 文件系统服务器 261 11.1 本章综 261 11.2 实现文件系统服务器 261 11.3 总结 276 第 12 章 服务器端的 Slice-to-Java 映射 279 12.1 Chapter Overview 279 12.2 引言 279 12.3 服务器端 main函数 280 12.4 接口的映射 285 12.5 参数传递 287 12.6 引发异常 288 12.7 Tie 类 289 12.8 对象体现 292 12.9 总结 296 第 13 章开发 Java 文件系统服务器 297 13.1 本章综 297 13.2 实现文件系统服务器 297 13.3 总结 306 第 14 章 Ice 属性与配置 307 14.1 本章综 307 14.2 属性 307 14.3 配置文件 309 14.4 在命令行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值