Creative Commons License
本Blog采用 知识共享署名-非商业性使用-禁止演绎 3.0 Unported许可协议 进行许可。 —— Fox <游戏人生>

游戏人生

游戏人生 != ( 人生 == 游戏 )
站点迁移至:http://www.yulefox.com。请订阅本博的朋友将RSS修改为http://feeds.feedburner.com/yulefox
posts - 62, comments - 508, trackbacks - 0, articles - 7

Cygwin下安装ACE

Posted on 2009-08-17 09:52 Fox 阅读(2304) 评论(2)  编辑 收藏 引用 所属分类: T技术碎语

本文同步自游戏人生

-----------------------读书-----------------------

想读《UNIX Network Programming》很久了,只是这种愿望一直没有特别强烈。用的笔记本换了之后强迫自己只是装了cygwin,没有安装VS,平时写些代码就只能在cygwin下用gcc了。最近对UNIX环境编程和网络基础比较感兴趣,于是读这本书终于提上了议事日程,可是大多数书店都没有这本书了。

工作之后,对于自己喜欢的书,就很少会去看电子版,觉得还是捧卷在手的感觉舒服一些,想怎么看怎么看,享受拿笔在上面写写画画的感觉。因此对于想读但买不到的书,第一反应是等待。在翻电脑上面一些资料的时候才反应过来我已经很久没有down过电子书了,结果就从网上down了很多想读(豆瓣)的书,forgive me, Richard Stevens and anybody.

-----------------------动手-----------------------

之前只是在Windows下用过ACE,因为ACE提供了VS各种版本的解决方案,编译过程比较简单。这次放在cygwin下编译的时候,因为环境变量设置问题,并不是非常顺利,参照了源码目录下的ACE-INSTALL.html的描述才将问题解决。现在将过程给出来,仅供google到这里的同学参考:

友情提示:我目前对于cygwin和UNIX类系统的了解停留在知其然(还是在google之后)的水平。

1. 增加环境变量

o 修改/etc/profile文件读写属性:

$ chmod 777 /etc/profile

cygwin下的环境变量可以在该文件中配置,由于该文件默认具有写保护属性,因此需要修改使之可写,修改完成之后应该记得对其进行写保护:

$ chmod 555 /etc/profile

o 打开profile文件(本人使用emacs进行编辑,读者也可以使用vi、vim等,在此不再赘述):

$ emacs /etc/profile

o 往profile中修改和添加环境变量:

将以下五行添加到文件中,ACE_ROOT为ACE源码目录,本文用到的目录是/usr/share/ace:

ACE_ROOT=/usr/share/ace
export ACE_ROOT

LD_LIBRARY_PATH=$ACE_ROOT/ace:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

# export PATH=$ACE_ROOT/ace:$PATH

这个操作等同于在VS下修改库文件目录,我是直接修改了PATH变量的:

PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:$ACE_ROOT/ace:$PATH

o 执行/etc/profile

$ /etc/profile

执行修改后有可能需要重启cygwin,可使用下面的命令查看ACE_ROOT设置是否正确:

$ echo $ACE_ROOT

2. 创建若干文件:

o 在$ACE_ROOT/ace 文件夹中创建名为 config.h 的文件,并加入以下内容后保存关闭:

#include "ace/config-cygwin32.h"

o 在$ACE_ROOT/include/makeinclude 文件夹中创建名为 platform_macros.GNU 的文件,并加入以下内容保存关闭:

include $(ACE_ROOT)/include/makeinclude/platform_cygwin32.GNU

3. 编译ACE:

$ cd $ACE_ROOT/ace
$ make

大概会花掉十几分钟时间吧。

4. 测试ACE:

$ cd $ACE_ROOT/tests
$ make

大概又会花掉十几分钟时间吧。

接下来就可以使用perl脚本完成所有测试,我没有使用过perl,临时安装了一下。

$ perl run_test.pl

这个脚本在我一位同事的机器上跑了很久(十几分钟 or 几十分钟?),不幸的是,Windows竟然抛出了一个内存读写错误,更加不幸的是,我现在没有能力去确定。

结果周末后面的时间又花在熟悉EMacs上了,还没有看ACE的代码,只有下周才能看了。

-----------------------结束-----------------------

这种小学生的东西拿出来讲确实是很难为情的,然而,于我现在却又算是极大的一个收获。真等我熟悉了其中的很多内容,又未必会再有耐心说了。所以还是记录一下,既是鼓励,也是督促。

晚上睡觉之前翻了一下《ACE程序员指南:网络与系统编程的实用设计模式》,发现里面2.3节也讲到了怎么安装。

Feedback

# re: Cygwin下安装ACE  回复  更多评论   

2009-08-19 14:39 by 罗莱家纺
不错啊~

# re: Cygwin下安装ACE  回复  更多评论   

2011-09-17 16:31 by replica watches
学习

# re: Cygwin下安装ACE  回复  更多评论   

2012-08-17 22:16 by chanel j12 watches
cheap chanel watches

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理