ice3.3.1在windows下的编译以及工程搭建

windows下vc6编译Ice3.3.1
1 安装ice的第3方安装包,安装到默认路径
2 修改Ice-3.3.1\cpp\config目录下Make.rules.mak中的配置: CPP_COMPILER= VC60,如果是其它版本编译器,则对应修改。
3 运行cmd进入命令行窗口
3 在命令行窗口cd到vc的安装目录bin下例如:C:\Program Files\Microsoft Visual Studio\VC98\Bin
  运行VCVARS32.BAT设置编译器选项
4 在命令行窗口cd到Ice-3.3.1\cpp目录
5 运行下面的命令
set INCLUDE=D:\study\avocado\c++\thirdparty\Microsoft SDK\include;C:\Ice-3.3.1-ThirdParty-VC60\include;C:\Ice-3.3.1-ThirdParty-VC60\include\stlport;%INCLUDE%;
set LIB=D:\study\avocado\c++\thirdparty\Microsoft SDK\Lib;%LIB%;
6 运行 nmake /f Makefile.mak


注意3跟5的顺序不能搞反。



有时候为了方便调试,需要使用vc6.0直接搭建ice的源码工程,现把我之前搭建ice工程的步骤记录下来,方便以后直接拿来使用

新建立一个myiceproject目录,iceutil,ice等ice的源码工程目录位于myiceproject下,例如ice.dsp 就位于myiceproject / ice 目录下。

myiceproject下工程说明:


1  myiceproject 目录必须同Ice-3.3.1,以及Ice-3.3.1-ThirdParty放在同一个目录下。


2  必须自行设置好windows sdk 的include及lib目录。


3  直接使用ice编译好的lib文件的工程,需要自行设置连接ice的lib文件目录。


/******************************/
iceutil工程include目录
.
../../Ice-3.3.1/cpp/include
../../Ice-3.3.1/cpp/src
../../Ice-3.3.1/cpp/test/include
../../Ice-3.3.1-ThirdParty-VC60/include/stlport
iceutil工程lib目录
../../Ice-3.3.1-ThirdParty-VC60/lib


iceutil工程设置宏:
ICE_UTIL_API_EXPORTS


iceutil工程windows要连接的lib文件:
Rpcrt4.lib Advapi32.lib
/******************************/




ice工程搭建:


1 在将Ice-3.3.1\slice\Ice目录中的slice生成文件之前将Ice-3.3.1\cpp\src\Ice中的所有文件添加到src目录
2 在将Ice-3.3.1\slice\Ice目录中的slice生成文件之前将Ice-3.3.1\cpp\include\Ice中的所有文件添加到header files目录
3 将Ice-3.3.1\slice\Ice目录中的slice生成文件,生产的部分文件产生在Ice-3.3.1\cpp\src\Ice中,部分产生在Ice-3.3.1/cpp/include/Ice中
4 将slice生成在Ice-3.3.1\cpp\src\Ice目录中的文件添加到slice目录中
5 将slice生成在Ice-3.3.1\cpp\inlucde\Ice目录中的文件添加到slice_inc目录中
6 在工程中去掉 SysLoggerI.h,SysLoggerI.cpp这2个文件,ice没用到,况且编译时有问题。以后再研究这2个文件的用途。




ice工程include目录
.
../../Ice-3.3.1/cpp/include,
../../Ice-3.3.1/cpp/src,
../../Ice-3.3.1-ThirdParty-VC60/include,
../../Ice-3.3.1-ThirdParty-VC60/include/stlport


ice工程lib目录
../../Ice-3.3.1-ThirdParty-VC60/lib
../../Ice-3.3.1/cpp/lib
ice工程windows要连接的lib文件:
iceutild.lib ws2_32.lib Iphlpapi.lib Rpcrt4.lib Advapi32.lib libbz2d.lib


ice工程设置宏:
ICE_API_EXPORTS
WIN32_LEAN_AND_MEAN
添加/GR 设置

自己在ice工程目录下开发一个服务端主程序文件server.cpp,客户端主程序文件client.cpp
使用ice工程目录下的server.cpp编译则工程编译成服务器程序,使用client.cpp编译则为客户端程序。

你可能感兴趣的:(windows,api,Microsoft,include,compiler,编译器)