读书人

运用Three20时提示找不到:TTCreate

发布时间: 2012-08-10 12:19:33 作者: rapoo

使用Three20时,提示找不到:TTCreateNonRetainingArray()
我的代码是:
- (id)init {

if (!(self = [super init])) {
// 初始化成员
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
locationManager.distanceFilter = 10.0f; // in meters

// 创建委托数组
_delegates = TTCreateNonRetainingArray(); // 就是这里!!!!

statusLocation = LocationInit;
self.currentLocation = nil;
}
return self;
}


链接错误是:
Undefined symbols:
"TTCreateNonRetainingArray()", referenced from:
-[xxxxx init] in xxxxx.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

提示的是链接错误,说明头文件包含了,我查过了,TTCreateNonRetainingArray()函数在头文件:TTGlobalCore.h中
对应的库是: libThree20Core.a。库我链接了,加入到 Fromeworks 中。还有什么地方遗漏了吗?

[解决办法]
不是有个配置three的教材嘛,好好看看。
里面有很多东西要设置,我也不知道你哪里出问题了
[解决办法]
这种问题一般从这几个方面查:
1.头文件
2. 看Other Linker Flags中写你需要得静态库名了没有,比如:lXXX
3.看Library Search Path选项,是否把库文件路径加上
[解决办法]
你用nm命令确定libThree20Core.a库中是否含有TTCreateNonRetainingArray方法。

读书人网 >Iphone

热点推荐