免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5556 | 回复: 5
打印 上一主题 下一主题

求助~有个linux代码想通过cygwin移植到windows下,遇到了问题~ [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-07-22 17:52 |只看该作者 |倒序浏览
本帖最后由 菜鸟瞄咪 于 2010-07-23 08:26 编辑

有段linux的代码要移植到windows下,网络方面的,用了socket、alarm、signal、还有pthread等,直接移植比较麻烦,所以用了很多人推荐的cygwin,直接用gcc编译后很顺利的生成了exe文件并在cygwin下运行ok,窃喜啊 ~~

可是使用Windows命令行的方式运行时却总是报错 ,先是说需要cygwin1.dll库,找到该库并拷到到相应目录后运行却报
fatal error - add_item<"憬","/",...> failed   errno 22。

怀疑是系统环境问题,所以很奋力的查了下,貌似说在编译时使用-mno-cygwin选项可以去掉对cygwin环境的依赖,于是再次试验~可是郁闷啊,居然编译通不过了,报错如下
sys/ioctl.h:no such file or directory
sys/socket.h:no such file or directory
sys/netinet.h:no such file or directory
...................

可是明明有这些文件啊,于是锲而不舍滴在编译时把文件的路径加进去再试,悲剧的又报了下面的错:
.........................

/usr/include/cygwin/socket.h:55 parse error before "__uid32-t"

..........
有点摸不着头脑啊,也不复杂的代码怎么总是出错呢???由于本喵是在有点菜,不知道接着该怎么办了~

各位路过的大侠帮下忙~~

求指点啊~~~~

这个是linux的源码。。只有一个文件。。。

ocs.rar (2.22 KB, 下载次数: 28)

论坛徽章:
0
2 [报告]
发表于 2010-07-22 22:33 |只看该作者
没时间看你代码,不知是哪方面的?如果跟系统关系不大,直接vc编译,移植过来应该不是难事。
cygwin玩过一次,好几年前,忘了

论坛徽章:
0
3 [报告]
发表于 2010-07-23 08:21 |只看该作者
本帖最后由 菜鸟瞄咪 于 2010-07-23 08:27 编辑
没时间看你代码,不知是哪方面的?如果跟系统关系不大,直接vc编译,移植过来应该不是难事。
cygwin玩过一 ...
duanjigang 发表于 2010-07-22 22:33



   谢谢楼上滴~~~~ 代码是网络方面的,用了socket、alarm、signal、pthread等。。所以直接改代码比较麻烦。。。所以才用cygwin想着会比较方便点。。。

论坛徽章:
0
4 [报告]
发表于 2010-07-23 09:54 |只看该作者
谢谢楼上滴~~~~ 代码是网络方面的,用了socket、alarm、signal、pthread等。。所以直接改代 ...
菜鸟瞄咪 发表于 2010-07-23 08:21



    根据我个人经验,做这种多平台的程序,socket最好用人家封装好的通讯库,比如ACE或者ICE。
signal,alarm这些不清楚应该也有多平台通用的。
pthread和windows那个thread的api也可以封装成通用的,事实上ICE自带的线程库就可以。
这样看来,移植其实并不会多麻烦,如果你愿意对实现多些许修改的话

论坛徽章:
0
5 [报告]
发表于 2010-07-23 10:57 |只看该作者
这个/usr/include/cygwin/socket.h:55 parse error before "__uid32-t"头

包含了其它文件的定义,也就是定义"__uid32-t"的头文件

论坛徽章:
0
6 [报告]
发表于 2010-07-23 11:05 |只看该作者
socket、alarm、signal、还有pthread.,这些跟系统都有很大关系吧,头文件都不一样
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP