最近学习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命令,将其添加到文件搜索目录里。我也试过,但还是不行。哪位达人可以帮帮我?
感激不尽