2009-03-26 18:31:31 原文链接
1、前言
ICE-E是ICE在嵌入式上运行的一个版本,与ICE比较如下:
Category | Ice 3.3.0 | Ice-E 1.3.0 |
Thread Pool concurrency model | ||
Bidirectional connections | ||
Active connection management (ACM) | ||
Request batching | ||
Support for UDP and SSL | ||
Objects by Value | ||
Implicit contexts | ||
Servant locators | ||
Default servants | ||
Collocation optimization | ||
Asynchronous method invocation (AMI) | ||
Asynchronous method dispatch (AMD) | ||
Dynamic Ice | ||
Dispatch interceptors | ||
Thread priorities | ||
Protocol compression | ||
Application and service convenience classes | ||
Runs on Windows and Linux | ||
Runs on MacOS X, Solaris and HP-UX | ||
Runs on Windows Mobile | ||
Tested on Embedded Linux devices | ||
Shared libraries | ||
Static libraries | ||
Build-time selectable feature support |
作者邮件:nvzgq@163.com
目前官方宣称支持的平台:
|
可以看到,嵌入式linux官方仅说明了可以运行在Gumstix Linux系统上,并没有说明可支持其他linux系统,我们只好做个实验验证一下。
2、准备工作:
1)安装交叉编译环境arm-linux-gcc3.4.1
2)安装mcpp2.7 ,下载网站http://mcpp.sourceforge.net;
3)下载ICE-E1.3.0
我安装的环境是centos5.2
3、安装
$ tar xvfz IceE-1.3.0.tar.gz
$ cd IceE-1.3.0
$ make configure
$ make
4、交叉编译
$ export CXX=arm-linux-c++
$ export AR=arm-linux-ar
更改cppe/config/Make.rules
将#GUMSTIX
修改 IceE-1.3.0\cppe\src\IceE\Time.cpp 126行到134行间内容,使其与115行到126行内容相同。
在IceE-1.3.0目录下
$ make clean
$make
5、试运行
将IceE-1.3.0\cppe\demo\IceE\hello 目录中的 client 目录、server目录拷贝到arm实验板上,同时把IceE-1.3.0\cppe\lib中文件复制到arm实验上。
在试验板linux中运行
$export LD_LIBRARY_PATH=lib文件存放目录:$LD_LIBRARY_PATH
然后就可运行示例程序server和client程序了。
作者邮件:nvzgq@163.com转载注明作者和出处