(菜鸟版)
确保 gcc版本4.4.6(其他版本未测试),4.8不行

一、降级GCC到4.4.6
注意:gcc g++ c++命令都为4.4.6(可用gcc -v; g++ -v; c++ -v 命令查询版本)

附:降级GCC-4.4.6参考:http://blog.sina.com.cn/s/blog_4e2804490100sccq.html


附:gcc下载地址:http://ftp.gnu.org/gnu/gcc/
ICE-3.4.2下载地址:https://zeroc.com/download_3_4_2.html
ThirdParty-Sources-3.4.2下载链接:http://download.zeroc.com/Ice/3.4/ThirdParty-Sources-3.4.2.tar.gz

以防万一我放在云盘一份:http://pan.baidu.com/s/1c0Ep3vq

二、安装ICE-3.4.2

请参照:http://my.oschina.net/sumiaowen/blog/161071

在此感谢作者!

注意:后面有一步骤make的时候有错,根据报错的提示用 make -n就行

适合本机的具体步骤:

1、安装第三方包:ThirdParty-Sources-3.4.2

(1)解压安装包

# tar zxvf ThirdParty-Sources-3.4.2.tar.gz
# cd ThirdParty-Sources-3.4.2

(2)安装mcpp

# tar zxvf mcpp-2.7.2.tar.gz
# cd mcpp-2.7.2
# ./configure --prefix=/usr/local/ICE-3.4.2/mcpp-2.7.2/ CFLAGS=-fPIC -enable-mcpplib -disable-shared
# make
# make install

(3)安装Berkeley DB
Berkeley DB 是一个高性能的,嵌入数据库编程库,和C语言, C++, Java, Perl, Python, Tcl以及其他很多语言都有绑定。

# cd ..
# tar zxvf db-4.8.30.NC.tar.gz
# cd db-4.8.30.NC/build_unix/
# ../dist/configure --prefix=/usr/local/ICE-3.4.2/BerkeleyDB.4.6/ -enable-cxx
# make
# make install

(4)安装bzip2
bzip2 是 Julian Seward 开发并按照自由软件/开源软件协议发布的数据压缩算法及程序。

# cd../../
# tar zxvf bzip2-1.0.6.tar.gz
# cd bzip2-1.0.6
修改Makefile,将PREFIX指向/usr/local/ICE-3.4.2/bzip2-1.0.6
# make
# make install

(5)安装expat
expat 是一个 XML parsing C library。

# cd ..
# tar zxvf expat-2.0.1.tar.gz
# cd expat-2.0.1
# ./configure --prefix=/usr/local/ICE-3.4.2/expat-2.0.1/
# make
# make install

(6)安装openssl
openssl 是 Secure Socket Layer (SSL) binary and related cryptographic tools。

# cd ..
# tar zxvf openssl-0.9.8r.tar.gz
# cd openssl-0.9.8r
# ./config --prefix=/usr/local/ICE-3.4.2/openssl
# make
# make install

2、安装ICE-3.4.2
# tar zxvf Ice-3.4.2.tar.gz
# cd Ice-3.4.2/cpp
# vi config/Make.rules

修改安装包路径:
prefix ?= /usr/local/ICE-3.4.2/Ice-$(VERSION)
embedded_runpath_prefix ?= /usr/local/ICE-3.4.2/Ice-$(VERSION_MAJOR).$(VERSION_MINOR)
BZIP2_HOME ?= /usr/local/ICE-3.4.2/bzip2-1.0.6
DB_HOME ?= /usr/local/ICE-3.4.2/BerkeleyDB.4.6
EXPAT_HOME ?= /usr/local/ICE-3.4.2/expat-2.0.1
OPENSSL_HOME ?= /usr/local/ICE-3.4.2/openssl
MCPP_HOME ?= /usr/local/ICE-3.4.2/mcpp-2.7.2

# make
# make install

3、设置ICE环境变量:
# vi /etc/profile

export ICE_HOME=/usr/local/ICE-3.4.2/Ice-3.4.2
export PATH=$PATH:$ICE_HOME/bin
export LD_LIBRARY_PATH=$ICE_HOME/lib
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC ICE_HOME

使之生效:
#source /etc/profile

测试是否成功:
#icegridnode --version
#icegridadmin --version

4、加一个cpp目录下demo测试

(1)进入解压后的ICE-3.4.2目录
进入cpp/demo/Ice/hello

(2)运行
#./server

少库报错,解决:
#vim /etc/ld.so.conf

第二行加入:/usr/local/ICE-3.4.2/Ice-3.4.2/lib 保存退出
#/sbin/ldconfig -v

(3)OK!
#./server
#./client

client端向服务器端发送数据成功!

参考原文:http://my.oschina.net/sumiaowen/blog/161071 再次感谢作者!感谢。

中标麒麟6.0_ICE3.4.2编译+demo测试(CPP)的更多相关文章

  1. 技术分享 | ARM下中标麒麟系统ky10使用Xtrabackup-8.0.25

    欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 一.需求背景 查询Percona官方手册,Xtrabackup 8.0可以备份M ...

  2. 中标麒麟高级服务器操作系统V6

    平台: linux 类型: 虚拟机镜像 软件包: java-1.6.0 mysql-5.1.5 python-2.6 qt3-3.3.8b basic software linux neokylin ...

  3. 国产中标麒麟Linux部署dotnet core 环境并运行项目 (三) 部署运行WEB API项目

    部署dotnet Core Web API 上一步的文章,是我们公司最核心的一个ORM组件,在中标麒麟系统完成了一个插入数据的任务,这一步是将正式的从dot net framework 迁移到 dot ...

  4. 国产中标麒麟Linux部署dotnet core 环境并运行项目 (二) 部署运行控制台项目

    背景 在上一篇文章安装dotnet core,已经安装好dotnet core了.之前只是安装成功了dotnet, 输入dotnet --info,可以确认安装成功了,但是在运行代码时,还是报错了,本 ...

  5. 国产中标麒麟Linux部署dotnet core 环境并运行项目 (一) 安装dotnet core

    背景 根据我之前写的文章 将 Net 项目升级 Core项目经验:(一)迁移Net项目为Net Core\Standard项目,我们将公司内部最核心的ORM框架迁移到net core 上面,并在win ...

  6. 基于Linux(中标麒麟)上QT的环境搭建——解决cannot find lGL的问题

    接上一篇,QT在中标麒麟环境安装完成后遇到运行报错的问题 一.问题描述: 在中标麒麟上配置好QT的环境后,新建一个工程,不做其他的任何操作,直接运行都会报cannot find lGL的错误.如图所示 ...

  7. [转帖] 龙芯 中标麒麟的 源 以及K8S

    龙芯Mips64el平台上部署K8s https://ysicing.me/posts/mips64el-loongson-k8s/ YSICING May 29 2019   kubernetes ...

  8. 虚拟机VMware,安装中标麒麟系统,64位的,版本6.0,并安装qt

    为了使用qt开发,安装中标麒麟系统. 虚拟机中安装,本来安装的是32位麒麟系统,结果发现qt无法安装(官网提供的是64位的run程序). qt安装的是qt-opensource-linux-x64-5 ...

  9. U盘安装中标麒麟服务器操作系统 一 (NeoKylin 6.5)

    U盘安装中标麒麟服务器操作系统(NeoKylin 6.5) 首先需要下载中标麒麟服务器操作系统的iso镜像.我这里的是NeoKylin Linux A 6.5.iso 因为超过了4GB,百度网盘不支持 ...

随机推荐

  1. property参数

      1,set方法内存管理相关的参数 *retain:release旧值,retain新值(适用于OC对象类型) *assign:直接赋值(默认,只用于非OC对象类型) *copy: release旧 ...

  2. erp crm oa

    erp是企业管理计划 crm是客户关系管理 oa是办公自动化erp管理的是企业的进销存.产供销.财务等crm主要是管理企业的客户,可以和erp的销售系统挂钩oa主要是管理一些内部的文档.公告,行政信息 ...

  3. Qt标题栏图标和运行程序图标设置

    一.标题栏图标 1.*.qrc资源文件中添加图片 2.添加代码 setWindowIcon(QIcon(":/images/paste.png")); //设置窗口上的图标,需要在 ...

  4. Lucene学习之初步了解

    全文搜索 比如,我们一个文件夹中,或者一个磁盘中有很多的文件,记事本.world.Excel.pdf,我们想根据其中的关键词搜索包含的文件.例如,我们输入Lucene,所有内容含有Lucene的文件就 ...

  5. VB中后台打开Excel文件实现代码

    某些时候需要打开Excel文件来获取或者写入数据,但又不希望跳出打开的Excel文件窗口,可以用下面的代码: Dim eb As New excel.Application, wb as excel. ...

  6. EOFError:EOF when reading a line

    Sublime2编译Python程序EOFError:EOF when reading a line: 是因为Sublime2对于python中运行含有input或者raw_input的python代 ...

  7. python image show()方法的预览问题

      在windows下面使用PIL中Image的show()函数时,执行下列代码: from PIL import Image img = Image.open("1.png") ...

  8. jchat:linux聊天程序4:客户端

    makefile: jchat: main.o login.o regist.o tcp.o gcc -w main.o login.o regist.o tcp.o -o jchat rm -f * ...

  9. linux c语言连接mysql

    ubuntu下使用apt-get安装mysql: sudo apt-get install mysql-server sudo apt-get install mysql-client sudo ap ...

  10. Cortex-M3和Cortex-M4 Fault异常应用之二 ----- Fault处理函数的实现

    在项目处于调试期间,Fault处理程序可能只是一个断点指令,调试器遇到这个指令后停止程序的运行.默认情况下,由于非硬Fault被禁能,所有发生的非Fault都会上访成硬Fault,因此只要在硬Faul ...