LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1011|回复: 8

在deban下调用semaphore出错???

[复制链接]
发表于 2005-10-22 16:34:55 | 显示全部楼层 |阅读模式
:!! 在redhat下ok,但在debian3.1下却出错了???具体使用如下:
在应用程序里用sem_init初始化一个semaphore,传给sdk,然后用sem_wait等待,sdk调用sem_post激活主程序里的等待,但现在在debian下,在sdk里调用sem_post时就使程序退出,并报segmemant fault了,但在Redhat9或Fedora下却是好的,郁闷,请大虾们指教,在debian的sdk加载有什么特别的吗?
发表于 2005-10-22 16:44:18 | 显示全部楼层
我觉得可能是库函数的问题,你更新一下你库函数?信号量都是在内核里实现的,可能redhat、fedora里用的库用得不一样。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-10-24 09:18:32 | 显示全部楼层
库函数?不好意思,可以说得更明白一些吗?我需要更新什么,怎么更新啊?
我刚从Redhat转过来,对Debain是又爱又怕啊!
回复 支持 反对

使用道具 举报

发表于 2005-10-24 17:37:16 | 显示全部楼层
这跟发行版没有关系, 应当是你系统中的库文件(.so)有错误或坏掉.
或不全
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-10-26 09:21:01 | 显示全部楼层
请各位大佬能否把问题说得更明白一下!或具体一些!
回复 支持 反对

使用道具 举报

发表于 2005-10-26 11:07:34 | 显示全部楼层
具体的说,我也不知道你具体是哪个库没有或者坏掉了,你最好在网上搜索一下,或者用apt搜索一下库,然后全部安装一下。
回复 支持 反对

使用道具 举报

发表于 2005-10-26 11:09:06 | 显示全部楼层
要么就是因为内核版本的原因,对信号量操作有变化,可能要改源程序?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-10-26 14:04:18 | 显示全部楼层
我做了个测试程序,在redhat下好的,在debian就不行!而且在debian下,用静态库方式又是好的,就是动态库不行,不知道在debian下加载动态库还有什么讲究?
我的系统是特意刚装的!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-10-27 10:49:03 | 显示全部楼层
哈哈,问题解决,是pthread的问题
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表