背景:

目前发布的Ice最新版本为3.6.0,使用的vs2013编译的,vs2015版本正在开发,发布只是时间问题;

不过官方实在给力,github上的源码已经支持vs2015编译了。源码版本为3.6.1

开发环境:

64位Win7旗舰版 + vs2015企业版

正题:

1、编译及安装Ice

从github上下载ice3.6.1的源码,按照https://github.com/zeroc-ice/ice/blob/master/cpp/BuildInstructionsWindows.md说明进行编译及安装。

说明:

1)不用手动下载或安装第三方依赖库。官方已经把第三方依赖库集成到Makefile中了,使用nuget直接去下载库文件。

2)默认编译为Debug版本,修改cpp\config\Make.rules.mak文件中 OPTIMIZE = yes (取消注释),则编译为Release版本。

3)默认安装目录为 C:\Ice-3.6.1

4)编译中出现的错误及解决办法:

错误1:下载第三方依赖库时,出错:无法连接到远程服务器。

解决办法:确保网络是正常的,然后多试几次。那四个第三方库,我大概试了5、6次才全部下载下来。

错误2:在Debug和Release版本编译切换后出现 error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项

解决办法:执行 nmake /f Makefile.mak clean,清除之前编译生成的文件。

2、安装Ice Builder

从官方下载 https://visualstudiogallery.msdn.microsoft.com/1a64e701-63f2-4740-8004-290e6c682ce0并安装

3、配置vs2015

1)vs2015界面 -- 工具 -- 选项 -- Projects and Solutions -- Ice Builder,将Ice home directory设为C:\Ice-3.6.1

2)安装Ice Builder后,IceLib宏的值默认为C:\Ice-3.6.1\lib\vc140,而我们之前默认安装的路径C:\Ice-3.6.1\lib下没有vc140目录,因此新建vc140目录并把lib下文件复制一份过去。

Zeroc Ice 3.6.1 生成 vs2015 c++ 版本库及相关配置的更多相关文章

  1. ZeroC Ice启用SSL通讯的配置

    Zeroc ICE ( Internet Communications Engine )中间件号称标准统一,开源,跨平台,跨语言,分布式,安全,服务透明,负载均衡,面向对象,性能优越,防火墙穿透,通讯 ...

  2. ZEROC ICE 跨平台间程序调用 java版

    前言: 本来建博客是为了和大家分享一些前端的开发经验和心得呢,但是阴差阳错,第一篇技术博客确实关于跨平台,跨语言服务端调用的解决方案---ZEROC ICE. 最近一个项目涉及到java.python ...

  3. Zeroc Ice Slice语言使用 HelloWorld

    Slice介绍         为了开发多语言支持的RPC服务,需要一种中立的新语言来定义这个服务接口,以便各个编程语言能够准确无误地理解和翻译接口,为此Ice设计了Slice语言.Ice开发的第一步 ...

  4. Zeroc Ice原理介绍

    Ice介绍         Ice(Internet Communications Engine)是ZeroC公司的杰作,继承了CORBA的血统,是新一代的面向对象的分布式系统中间件.Ice是RPC通 ...

  5. Ubuntu16.04下ZeroC ICE的安装与使用示例(Qt C++ 和 Java)

    项目需求:在Ubuntu16.04系统下安装并使用ICEgrid 3.7进行c++和Java Springboot开发环境的通信,下面逐一介绍各个步骤的详解: 一:Ice Lib的安装 参考官网地址: ...

  6. 用Python开发Zeroc Ice应用

    Zeroc Ice简介   Zeroc ICE(Internet Communications Engine ,互联网通信引擎)是目前功能比较强大和完善的RPC框架,支持跨平台.跨语言调用.它非常灵活 ...

  7. Zeroc Ice 发布订阅者之demo Icestorm之clock

    刚刚在服务端(192.168.0.113)和客户端跑通(192.168.0.188),在这里记录,作为备忘. 第一步:读readme,先用vs2010生成subscriber.exe和publishe ...

  8. ZeroC ICE的远程调用框架 Slice如何帮助我们进行Ice异步编程(AMI,AMD)

    Slice最大的用处就是为我们使用Ice进行编程,代劳绝大部分的重复性代码,并提供一些帮助性的框架代码,如用于AMI和AMD方式进行异步编程的回调框架. 当Slice不为我们生成代码时,我们仍然可以按 ...

  9. ZeroC ICE的远程调用框架 AMD

    继上一篇<ZeroC ICE的远程调用框架>,本篇再来说其中的AMD.(本篇需要重写) 当在ice文件中声明某个接口方法Method为["amd"]后,接口方法在stu ...

随机推荐

  1. 记python3 UnicodeEncodeError: 'latin-1' codec... 报错

    python3用cx_Oracle查询oracle数据库并打印输出,在windows上执行没问题,打算放suse上跑的时候就遇到了打印中文UnicodeEncodeError: 'latin-1' c ...

  2. Translating Skills(1)

    本文是参加公司英语翻译培训的课程.做此记录,以防忘记. ------------------------------------------------------------------------ ...

  3. np.stack() 与 tf.stack() 的简单理解

    说明:np ----> numpy       tf ----> tensorflownp.stack(arrays, axis=0) np.stack(arrays, axis=0) - ...

  4. cache和buffer区别

     Cache: 一般用于读缓存,用于将频繁读取的内容放入缓存,下次在读取相同的内容,直接从缓存冲读取,提高读取性能,缓存可以有多级. Buffer:一般用于写缓存,用于解决不同介质直接存储速度的不同, ...

  5. RESTful API 学习

    /********************************************************************************* * RESTful API 学习 ...

  6. Pycharm出现的部分快捷键无效问题及解决办法

    为了进行python开发,下载了Pycharm.但是发现启动后,执行ctrl+c和ctrl+v等快捷键都无法生效. 网上搜索了下,参考https://blog.csdn.net/c2366994582 ...

  7. 20155310 2016-2017-2 《Java程序设计》第八周学习总结

    20155310 2016-2017-2 <Java程序设计>第八周学习总结 教材学习内容总结 第十五章 通用API 通用API •日志:日志对信息安全意义重大,审计.取证.入侵检验等都会 ...

  8. PyCharm:ModuleNotFoundError: No module named 'HTMLTestRunner'

    PyCharm找不到HTMLTestRunner,还是之前的原因PyCharm和之前命令行安装使用的不是一套资源,需要重新导入 查看旧HTMLTestRunner的路径 在PyCharm找到同样类似的 ...

  9. LG1116 【车厢重组】

    前言 看了大家的做法,什么冒泡排序,插入排序,树状数组,线段树,都好厉害呐,我都没想出来 但我发现竟然还没有人用主席树,于是我跟大家交流一下 主席树 做法 显然我们有 \(Ans=\sum_{i=1} ...

  10. cin和cout详解

    无论输入数字还是字符串,一个回车键是把输入的这个东西送到变量中,可以一次性送到 一个(或者多个)空格键是分隔这些值的 cout <<N; for(int i=0;i<5;i++) { ...