免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 默难
打印 上一主题 下一主题

[关于cygwin]谁有这方面经验?使用它效率如何? [复制链接]

论坛徽章:
0
21 [报告]
发表于 2006-08-07 21:47 |只看该作者
原帖由 zengjin8310 于 2006-8-7 21:42 发表
cywin仅支持大部分POSIX系统调用, 初学者装个不错, 学多了直接装个linux多爽阿

-_-||
怎么把我放在这个行列里面了……我现在机器里面就只有一个操作系统叫做Magic Linux……
我现在是写一个程序,但是考虑到广大windows用户还没有脱离苦海,咱不是得考虑点人家的方便么~这才想要给他们提供一个windows版的程序用。但是windows编程我又不熟,只能借用cygwin把我的linux程序移植过去了。

真抱歉……又在技术版灌水了……

论坛徽章:
0
22 [报告]
发表于 2006-08-07 21:55 |只看该作者
原帖由 coldwarm 于 2006-8-7 21:28 发表
是不是说,用了cygwin之后,我就可以大张旗鼓地用POSIX定义的函数,然后特别心安理得地认为在linux下编译成功的程序多半也就能在windows上运行了?

不知道你的程序里面会不会使用IPC机制,我的印象里,cygwin ...

cygwin不支持IPC?
可能你用cygwin的时候它还年轻吧,现在的cygwin支持IPC了(质量好坏不知道,没具体测试)。

快点下载最近的CYGWIN试试吧

论坛徽章:
0
23 [报告]
发表于 2006-08-07 22:22 |只看该作者
原帖由 默难 于 2006-8-7 20:27 发表
感谢各位了~
用cygwin的话效率会下降到什么程度呢?如果比用python快的话我就应该可以接受了。(一般情况下)
关于MinGW,我以前也看过它的一些东西,一直以为它的功能就是把一个有#include <windows.h>的win32程序编译成.exe程序呢……莫非它可以把一个遵循POSIX的程序编译成能在windows上运行的. exe而且效率损失不太明显?我倒是听说过windows支持POSIX,只是效率有些……
我目前用到的一些依赖操作系统的东西大概包括:
非阻塞的socket,线程机制
写代码的时候发现windows那块有好多琐碎细节和UNIX有些不一样,我又没有太多时间去了解windows,所以才考虑cygwin这样的东西

Mingw是对gcc的一个Win32版的移植,是纯粹的Win32本地化程序,当然,用它编译生成的代码也是Win32本地化程序,不过,它目前使用的运行时库还是MS的MSVCRT.DLL(有一个开源的运行时库正在开发中,目前还很不完善)!因此上,Mingw不可能直接去编译个遵循POSIX的程序代码!我没有听说Mingw可以进行交叉编译!
另外,mingw带有一个msys系统,它是一个包括autoconf,automake,rxvt等等许多gnu套件的Win32移植版工具集!
我不是太赞成使用cygwin去做移植,它生成的不是本地化代码,那样效率差的太多了!不过,mysql似乎
也是利用cygwin进行的移植,好象效率也挺高的,费解ING。。。。。。。!

论坛徽章:
0
24 [报告]
发表于 2006-08-07 22:25 |只看该作者
原帖由 xy_god 于 2006-8-7 22:22 发表

Mingw是对gcc的一个Win32版的移植,是纯粹的Win32本地化程序,当然,用它编译生成的代码也是Win32本地化程序,不过,它目前使用的运行时库还是MS的MSVCRT.DLL(有一个开源的运行时库正在开发中,目前还很不完善 ...


cygwin1.dll不已经是个开源的运行时库?

论坛徽章:
24
狮子座
日期:2013-12-31 10:48:0015-16赛季CBA联赛之吉林
日期:2016-04-18 14:43:1015-16赛季CBA联赛之北控
日期:2016-05-18 15:01:4415-16赛季CBA联赛之上海
日期:2016-06-22 18:00:1315-16赛季CBA联赛之八一
日期:2016-06-25 11:02:2215-16赛季CBA联赛之佛山
日期:2016-08-17 22:48:2615-16赛季CBA联赛之福建
日期:2016-12-27 22:39:272016科比退役纪念章
日期:2017-02-08 23:49:4315-16赛季CBA联赛之八一
日期:2017-02-16 01:05:3415-16赛季CBA联赛之山东
日期:2017-02-22 15:34:5615-16赛季CBA联赛之上海
日期:2017-11-25 16:17:5015-16赛季CBA联赛之四川
日期:2016-01-17 18:38:37
25 [报告]
发表于 2006-08-07 22:29 |只看该作者
原帖由 默难 于 2006-8-7 20:27 发表
感谢各位了~
用cygwin的话效率会下降到什么程度呢?如果比用python快的话我就应该可以接受了。(一般情况下)
关于MinGW,我以前也看过它的一些东西,一直以为它的功能就是把一个有#include <windows.h>的win32程序编译成.exe程序呢……莫非它可以把一个遵循POSIX的程序编译成能在windows上运行的. exe而且效率损失不太明显?我倒是听说过windows支持POSIX,只是效率有些……
我目前用到的一些依赖操作系统的东西大概包括:
非阻塞的socket,线程机制
写代码的时候发现windows那块有好多琐碎细节和UNIX有些不一样,我又没有太多时间去了解windows,所以才考虑cygwin这样的东西


>>非阻塞的socket,线程机制
     这两个确实不太好办。我在 mingw 中用的是 windows 的 socket,  阻塞 socket 用了几个  #ifdef _WIN32 ...  #else ...
#endif,非阻塞的socket 没试过。 线程我用的是 gtkmm 的线程库,他隐藏了 Linux 和 windows/mingw 中线程的不同。

[ 本帖最后由 zhujiang73 于 2006-8-7 22:34 编辑 ]

论坛徽章:
0
26 [报告]
发表于 2006-08-07 22:31 |只看该作者
线程为什么不用boost里面的?

论坛徽章:
0
27 [报告]
发表于 2006-08-07 23:00 |只看该作者
cygwin不支持IPC?
可能你用cygwin的时候它还年轻吧,现在的cygwin支持IPC了(质量好坏不知道,没具体测试)。

不知道是那一个版本的cygwin, gcc版本是3.4.4,运行ipcs就显示Bad system call

论坛徽章:
0
28 [报告]
发表于 2006-08-08 11:48 |只看该作者
想封装跨平台建议学习ACE,强烈推荐,庞大而优雅,稳定,久经考验,设计思想值得借鉴,lz现在的思路不好。

论坛徽章:
0
29 [报告]
发表于 2006-10-08 13:49 |只看该作者
强烈建议使用 ACE

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
30 [报告]
发表于 2006-10-08 14:02 |只看该作者
原帖由 默难 于 2006-8-7 20:39 发表

多谢多谢~这几句话一下子打消了我心中的疑虑~
现在开始,统一删除代码中的#ifdef __WINDOWS__
TNND~折磨了我N个星期之久的windows编程终于在cygwin面前向我屈服了~
另外,windows上的程序安装起来似乎都有个 ...

安装程序我一直都用 NSIS(Nullsoft Scriptable Install System),非常不错。
http://nsis.sf.net/

[ 本帖最后由 flw 于 2006-10-8 14:03 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP