- 浏览: 54004 次
- 性别:
- 来自: 北京
文章分类
最新评论
ICE作为一种无平台的中间件,提供了最灵活的编译方式,即自定义的平台无关语言slice,这种以语言方式来配置的做法,极大的统一了网络服务的标准,有点类似于java语言的实现与编译,正是因为java语言的定义与实现都是由SUN公司提供的,才极大的推动了java语言的发发展。
在linux平台下编译比windows平台简单的多,必须要用g++ 3.x来编译ICE的开发包,否则会报错。
在http://www.zeroc.com/download.html 中下载Ice-3.0.1.tar.gz和ThirdParty-Sources-3.0.1.tar.gz,
先编译ThirdParty-Sources-3.0.1.tar.gz:
1、mkdir ThirdParty
2、cp ThirdParty-Sources-3.0.1.tar.gz ThirdParty
3、tar –xzvf ThirdParty-Sources-3.0.1.tar.gz
4、tar –xzvf openssl-0.9.8a.tar.gz
5、cd openssl-0.9.8a
6、./ Configure;make;make install
7、cd ..
8、tar –xzvf expat-1.95.8.tar.gz
9、cd expat-1.95.8
10、./ configure;make;make install
11、cd ..
12、tar –xzvf db-4.3.29.NC.tar.gz
13、cd db-4.3.29.NC
14、cd build_unix
15、../dist/configure;make;make install
16、cd ../..
17、tar –xzvf Ice-3.0.1.tar.gz
18、cd Ice-3.0.1
19、将config文件夹下的Make.rules.Linux,将c++改为g++
20、将config文件夹下的Make.rules里面的变量修改为第三方库的路径,找?号的是系统已经安装的,在linux下STL就是STLport不用另行安装。
#STLPORT_HOME ?= /opt/STLport
#
# If libbzip2 is not installed in a standard location where the compiler
# can find it, set BZIP2_HOME to the bzip2 installation directory.
#
#BZIP2_HOME ?= /opt/bzip2
#
# If Berkeley DB is not installed in a standard location where the
# compiler can find it, set DB_HOME to the Berkeley DB installation
# directory.
#
#DB_HOME = /root2/opt/db
#
# If OpenSSL is not installed in a standard location where the
# compiler can find it, set OPENSSL_HOME to the OpenSSL installation
# directory.
#
OPENSSL_HOME = /root2/opt/openssl
#
# Define if your OpenSSL requires Kerberos, and if Kerberos is not
# installed in a standard location.
#
KERBEROS_HOME ?= /usr/kerberos
#
# If expat is not installed in a standard location where the
# compiler can find it, set EXPAT_HOME to the expat
# installation directory.
#
EXPAT_HOME = /root2/opt/expat
#
# If readline is not installed in a standard location where the
# compiler can find it, AND you want to use readline,
# set READLINE_HOME to the readline installation directory.
#
#
#READLINE_HOME ?= /opt/readline
这一步如果出了问题 参见我转载的另一篇博客 《ICE在Linux下的完整编译安装》
21、make;make install
这样ICE就可以编译过去了,可以用make test来测试编译得是否正确。
在windows平台上安装ICE比较简单,就是VC设置麻烦些。因为我用的是VC6.0,但用VC7.0和8.0都有相对应的包,安装步骤是一样的。
首先从http://www.zeroc.com/download.html下载ThirdParty-3.0.1-VC60.msi和Ice-3.0.1-VC60.msi,直接安装。
打开VC6.0,在include和lib设置时,在include中加入Ice-3.0.1-ThirdParty-VC60\include\stl_port和Ice-3.0.1-VC60\include。同理在lib中加入Ice-3.0.1-ThirdParty-VC60\lib和Ice-3.0.1-VC60\lib
将Ice-3.0.1-ThirdParty-VC60\include和Ice-3.0.1-ThirdParty-VC60\lib放在第一行,否则编译STL的时候还是没有用STL_port,就会编译失败。
在编译console类型的程序时,要将Porject->setting->c/c++->code gereration中的Use run-time library中的Debug Multithreaded DLL选上,实现多线程,因为ICE本身天生就是多线程的。
在任何情况下编译ICE程序,都要将Porject->setting->C++ Language中的Enable Run-Time Type Information (RTTI)选中,否则STL_port会报Access violation - no RTTI data In Visual Studio (Visual C++)错误。
这样,两种平台上的ICE都安装完毕,可以用Demo来测试环境。
在linux平台下编译比windows平台简单的多,必须要用g++ 3.x来编译ICE的开发包,否则会报错。
在http://www.zeroc.com/download.html 中下载Ice-3.0.1.tar.gz和ThirdParty-Sources-3.0.1.tar.gz,
先编译ThirdParty-Sources-3.0.1.tar.gz:
1、mkdir ThirdParty
2、cp ThirdParty-Sources-3.0.1.tar.gz ThirdParty
3、tar –xzvf ThirdParty-Sources-3.0.1.tar.gz
4、tar –xzvf openssl-0.9.8a.tar.gz
5、cd openssl-0.9.8a
6、./ Configure;make;make install
7、cd ..
8、tar –xzvf expat-1.95.8.tar.gz
9、cd expat-1.95.8
10、./ configure;make;make install
11、cd ..
12、tar –xzvf db-4.3.29.NC.tar.gz
13、cd db-4.3.29.NC
14、cd build_unix
15、../dist/configure;make;make install
16、cd ../..
17、tar –xzvf Ice-3.0.1.tar.gz
18、cd Ice-3.0.1
19、将config文件夹下的Make.rules.Linux,将c++改为g++
20、将config文件夹下的Make.rules里面的变量修改为第三方库的路径,找?号的是系统已经安装的,在linux下STL就是STLport不用另行安装。
#STLPORT_HOME ?= /opt/STLport
#
# If libbzip2 is not installed in a standard location where the compiler
# can find it, set BZIP2_HOME to the bzip2 installation directory.
#
#BZIP2_HOME ?= /opt/bzip2
#
# If Berkeley DB is not installed in a standard location where the
# compiler can find it, set DB_HOME to the Berkeley DB installation
# directory.
#
#DB_HOME = /root2/opt/db
#
# If OpenSSL is not installed in a standard location where the
# compiler can find it, set OPENSSL_HOME to the OpenSSL installation
# directory.
#
OPENSSL_HOME = /root2/opt/openssl
#
# Define if your OpenSSL requires Kerberos, and if Kerberos is not
# installed in a standard location.
#
KERBEROS_HOME ?= /usr/kerberos
#
# If expat is not installed in a standard location where the
# compiler can find it, set EXPAT_HOME to the expat
# installation directory.
#
EXPAT_HOME = /root2/opt/expat
#
# If readline is not installed in a standard location where the
# compiler can find it, AND you want to use readline,
# set READLINE_HOME to the readline installation directory.
#
#
#READLINE_HOME ?= /opt/readline
这一步如果出了问题 参见我转载的另一篇博客 《ICE在Linux下的完整编译安装》
21、make;make install
这样ICE就可以编译过去了,可以用make test来测试编译得是否正确。
在windows平台上安装ICE比较简单,就是VC设置麻烦些。因为我用的是VC6.0,但用VC7.0和8.0都有相对应的包,安装步骤是一样的。
首先从http://www.zeroc.com/download.html下载ThirdParty-3.0.1-VC60.msi和Ice-3.0.1-VC60.msi,直接安装。
打开VC6.0,在include和lib设置时,在include中加入Ice-3.0.1-ThirdParty-VC60\include\stl_port和Ice-3.0.1-VC60\include。同理在lib中加入Ice-3.0.1-ThirdParty-VC60\lib和Ice-3.0.1-VC60\lib
将Ice-3.0.1-ThirdParty-VC60\include和Ice-3.0.1-ThirdParty-VC60\lib放在第一行,否则编译STL的时候还是没有用STL_port,就会编译失败。
在编译console类型的程序时,要将Porject->setting->c/c++->code gereration中的Use run-time library中的Debug Multithreaded DLL选上,实现多线程,因为ICE本身天生就是多线程的。
在任何情况下编译ICE程序,都要将Porject->setting->C++ Language中的Enable Run-Time Type Information (RTTI)选中,否则STL_port会报Access violation - no RTTI data In Visual Studio (Visual C++)错误。
这样,两种平台上的ICE都安装完毕,可以用Demo来测试环境。
发表评论
-
C++ 返回值 协变问题
2012-05-20 12:38 1531今天代码遇到了返回值协变问题,不知如何解决,发出来与大家讨论一 ... -
linux cpu info
2012-03-31 10:29 1404在Linux体系中,供给了proc文件体系显示体系的软硬件信息 ... -
linux命令的正则表达式
2012-03-28 09:56 1052linux的命令行可以胜任 ... -
ICE异步调用方法
2012-03-20 14:11 2871ICE的AMI和AMD: AMI:指的是客户端 ... -
linux top命令用法
2012-02-21 17:47 1127linux top top命令是Linux下常用的性能分析工具 ... -
curl的timeout 崩溃问题
2012-01-19 11:38 2738最近供一个服务用到了curl,发现一件奇怪的事。 curl的超 ... -
gdb+core 定位so崩溃
2012-01-18 14:31 6744最近专门搞了一下so的调试。总结一下 关于core dump ... -
ubuntu ICE install
2011-12-12 22:40 1040转自; http://www.linuxidc.com/Li ... -
ICE在Linux下的完整编译安装
2011-12-07 15:35 3260ICE在Linux下的完整编译安装 安装平台要求:最好用g ... -
shell操作mysql
2011-12-04 13:28 1015在shell开发中,很多时候我们需要操作mysq ... -
ICE 属性配置相关
2011-11-24 10:51 894在前一篇文章中,大家 ... -
nginx源代码分析
2011-11-21 14:12 618http://hi.baidu.com/langwan/blo ... -
ICE开发环境搭建
2011-11-16 11:12 1688mark一下 转载自 http://bbs.chinaunix ... -
ice 的 Nonmutating 和 Idempotent
2011-11-15 10:37 967转载地址:http://duckweeds.b ... -
SecureCRT中文乱码全解决方案
2011-11-10 10:49 1327在网上搜索SecureCRT的中文显示乱码问题,答案无非是修改 ...
相关推荐
elcipse ICE 环境搭建 Eclipse下分布式计算环境构建与 开发——Eclipse与Slice2Java插件
前言本节主要讲解一下驱动开发环境搭建和一些常见的问题如何解决。环境搭建必要工具,windbg,VS13 或更高版本,WDK 驱动开发,KmdManager 和
linux环境下ICE平台的搭建方法,ICE开发必备
ICE 分布式开发环境搭建,电子书,demo
Android 4.0 SDK 已经出来好一段时间了,早就想试试这个版本到底怎样,好久没做android开发了,之前还是用Android2.2开发的,看这图貌似长得跟冰淇淋一样,所以叫 Ice Cream Sandwich(冰淇淋三明治),蛮有趣的。
项⽬描述:采⽤前后端分离架构实现的博客系统,主体架构采用 SpringBoot + Thymeleaf + MyBatis,基于Java环境采用 IntelliJ IDEA 开发,使用 Maven 工具构建。 涉及技术:Spring Boot、MyBatis、Thymeleaf 设计细节...
理论与实践的结合,透过详尽的实验例程,更深层次、系统化的学习Android系统的相关技术,从系统架构介绍、开发环境搭建,再到系统到平台的移植,应用软件的开发,整个课程系统采用由浅及深、循序渐进的学习模式,...
开发环境搭建 视频教程 FPGA教程 参考 iCESugar 介绍iCESugar 是MuseLab基于Lattice iCE40UP5k设计的开源FPGA开发板,开发板小巧精致,资源丰富,板载RGB LED,Switch,TYPE-C-USB, Micro-USB,大部分IO以标准PMOD...
一个学习Android的思维导图,只要从环境搭建、Android基础知识、用户界面优化、系统功能、数据存储、网络通信、混合编程、主流开源库深度部析、NFC应用开发、Android测试、实战开发
最近在搞基于python的webservice项目,今天为把环境给配好,折腾了不少时间,还是把配的过程记录下来,以后备用:首先你系统上要有python,这个不必说啦,我系统上用的是2.7+其次,要用python进行webservice开发,还...
2015 年 9 月 底,DeviceOne Release发布。至此,DeviceOne 基本完成了对多端的支持。基于 DeviceOne 可以: ... 实时简单部署。...下面介绍下DeviceOne环境搭建,不管是应用开发还是组件开发,都需要搭建