码迷,mamicode.com
首页 > 其他好文 > 详细

XCode 6.4编译错误----Undefined symbols for architecture i386: "_fwrite$UNIX2003"

时间:2015-10-29 19:58:09      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:

使用xcode在模拟器iphone4s和iphone5出现错误

编译时的错误描述:

Undefined symbols for architecture i386:
  "_fwrite$UNIX2003", referenced from:

一开始感觉是.a文件没有单独编译i386,x86_64导致,重新编译后

lipo -info xxxx.a

发现.a文件即使支持i386,x86_64,但还是编译不通过.

网上查了一些资料后,发现解需要在工程中添加一个.c 文件

#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>

FILE *fopen$UNIX2003( const char *filename, const char *mode )
{
    return fopen(filename, mode);
}

int fputs$UNIX2003(const char *res1, FILE *res2){
    return fputs(res1,res2);
}

int nanosleep$UNIX2003(int val){
    return usleep(val);
}

char* strerror$UNIX2003(int errornum){
    return strerror(errornum);
}

double strtod$UNIX2003(const char *nptr, char **endptr){
    return strtod(nptr, endptr);
}

size_t fwrite$UNIX2003( const void *a, size_t b, size_t c, FILE *d )
{
    return fwrite(a, b, c, d);
}

编译通过

XCode 6.4编译错误----Undefined symbols for architecture i386: "_fwrite$UNIX2003"

标签:

原文地址:http://www.cnblogs.com/lizilong/p/4921579.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!