使用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); }
编译通过
时间: 2024-10-14 05:33:04