• 中标麒麟6.0_ICE3.4.2编译+demo测试(CPP)


    (菜鸟版)
    确保 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 再次感谢作者!感谢。

  • 相关阅读:
    第三届蓝桥杯CC++B组3
    第三届蓝桥杯CC++B组2
    第三届蓝桥杯CC++B组1
    第四届蓝桥杯c/c++B组3
    第四届蓝桥杯c/c++B组4
    第四届蓝桥杯c/c++B组5
    Nodejs RESTFul架构实践之api篇
    Request —— 让 Node.js http请求变得超简单
    [转]在SqlServer 中解析JSON数据
    JavaScript异步编程的Promise模式
  • 原文地址:https://www.cnblogs.com/luoxiang/p/4517945.html
Copyright © 2020-2023  润新知