mips平台下的pthread
最近在做一个应用程序的移植,平台配置如下:
mips 2.6.15
gcc 3.4.4
binutils 2.16.1
编译成功后,download到目标板中运行,出现“segmentation fault”错误,无其他出错信息!!
在调试过程中发现该程序在未执行到main函数就已经“segmentation fault”了。
将程序简化到如下所示:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
printf("abc starting!!!\n");
return 0;
}
编译仍然segfault!!
后查看Makefile,去掉“-lpthread”编译选项后,以上简化程序可执行!!
而以上程序在arm平台下编译,均能正常工作。
因此初步怀疑,mips环境下的gcc对多线程(pthread)支持存在一些问题,尝试更换gcc版本为4.0.2,但问题依然存在,
故而求之于网络,哪位大侠处理过的话,请帮小妹一把吧!!谢谢!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
pthread的lib交叉了吧?
交叉gcc指定好mips的类型。
请问是什么意思???该gcc编译其他程序都没有问题(其他程序没有使用-lpthread)
目前已解决该问题,问题的确是以为pthread的c库支持问题,原来的uClib库不知道哪里有问题,是uClibc-snapshot版本的,后来换成了uClibc-0.9.28版本,程序就可以起来了。
uClibc 还小妹