您好我正在尝试创建一个可以添加到任何ios项目的静态库,但我只能让它工作,如果我在ios3中构建库,它将适用于ios3项目但不适用于ios4和反之亦然。
我得到的错误是:
未定义的符号: “.objc_class_name_UIImage”,引自: Test3-Release.a中的文字指针@_ OBJC @ _cls_refs @UIImage(TestViewController.o) “.objc_class_name_NSNotificationCenter”,引自: Test3-Release.a中的文字指针@_ OBJC @ _cls_refs @ NSNotificationCenter(Test.o)
所以看起来它没有为图书馆找到Foundation和UIKit框架?
这是我到目前为止所做的:
我有两个项目:1是一个带有库构建目标的库项目。另一个是测试项目,它试图使用第一个库中构建的库。
1)使用静态库目标创建项目并添加所有实现文件
2)在“Link Binary with Libraries”文件夹中添加了像UIKit,Foundation等库,并将所有链接库设置为在我的库目标中具有弱类型。
3)构建库,将其添加到我的测试项目中,以及我的头文件。
4)在我的测试项目中,我为所有构建配置设置了其他链接器标志-ObjC -all_load
当我编译它时,给了我一堆错误,好像我没有包含任何框架。
任何人对我该做什么都有任何想法?
提示(也许?) 我还注意到在我的库目标中添加任何框架到“Link Binary with Libraries”文件夹似乎没有做任何事情。我将CoreLocation添加到该文件夹,但是当我尝试在我的测试项目中编译时,在我将CoreLocation添加到Test Project Frameworks文件夹之前,它将无法编译。
答案 0 :(得分:0)
您的依赖项目(使用静态库)尚未链接Framework库。
只需添加依赖的项目框架(uikIt,Foundation等),一切都会正常工作。