ARM板下运行fopen函数出错

ARM板下运行fopen函数出错

ARM板上运行fopen函数出错
代码:
char filename[20]="test.txt";
char buf[100];
FILE *fp;
fp = fopen(filename,"w+b");
memset(buf,0,100);
strcpy(buf,"Hello World!");
int i= fwrite(buf,sizeof(buf),1,fp);
if( i!=-1)
{
  printf("fwrite OK!n");;
}
fclose(fp);

当我用gcc编译的时候,在LINUX里运行没有问题。可以正常的创建test.txt文件,也写入了相关的内容。
但是我用arm-linux-gcc编译成功了,在ARM板上运行的时候出错:SEGV 
求大神们帮个忙理解一下!万分感谢!


帮顶,是不是因为fopen是标准函数库,你可以试下底层函数,例如open。


gdb跟踪下看看哪里SEGV了,另外你file下你的可执行文件看看格式正确不?


gdb 调试一下,看看具体的报错语句是哪个


用Linux 库函数 open


请检查fp是否为null


你先创建一个text.txt文件,在运行程序试试看……然后再接着分析你的问题


用gdb调试,板子上跑gdbserver可以通过网口远程调试。

探讨

引用:

gdb跟踪下看看哪里SEGV了,另外你file下你的可执行文件看看格式正确不?

格式肯定没有问题,确定是交叉编译后的可执行文件。你们说说有没有可能是权限的问题呢?如果真是权限的问题,那要怎么改呢?

ARM板下运行fopen函数出错

相关文章:

你感兴趣的文章:

标签云: