我已经构建了自己的静态库,其中包含要在项目中重用的组件,最近需要更新一堆类。具体来说,由于某些类更改了名称,某些方法的签名也发生了更改。
现在发生的情况是,该库本身可以正常编译,但是,当添加到应用程序项目时,该项目无法链接:
Ld build/Sucursales.build/Debug-iphoneos/Sucursales.build/Objects-normal/armv6/Sucursales normal armv6
cd /Users/nameghino/src/Sucursales
setenv IPHONEOS_DEPLOYMENT_TARGET 3.1
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.2.sdk -L/Users/nameghino/src/Sucursales/build/Debug-iphoneos -L/Users/nameghino/src/Sucursales/../../Library/MyLibraries/MSSharedLibrary-1.0.0 -F/Users/nameghino/src/Sucursales/build/Debug-iphoneos -filelist /Users/nameghino/src/Sucursales/build/Sucursales.build/Debug-iphoneos/Sucursales.build/Objects-normal/armv6/Sucursales.LinkFileList -dead_strip -lxml2 -ObjC -all_load -miphoneos-version-min=3.1 -framework Foundation -framework UIKit -framework CoreGraphics -lsqlite3.0 -framework CoreLocation -framework MapKit -lxml2 /Users/nameghino/src/MSSharedComponents/Frameworks/MSSharedLibrary/build/Debug-iphoneos/libMSSharedLibrary.a -o /Users/nameghino/src/Sucursales/build/Sucursales.build/Debug-iphoneos/Sucursales.build/Objects-normal/armv6/Sucursales
Undefined symbols:
"_OBJC_CLASS_$_DataCatalogService_GetSingleRow", referenced from:
objc-class-ref-to-DataCatalogService_GetSingleRow in libMSSharedLibrary.a(MSDataCatalogSpecification.o)
**"_OBJC_CLASS_$_DataCatalogService_ArrayOfString", referenced from:
objc-class-ref-to-DataCatalogService_ArrayOfString in libMSSharedLibrary.a(MSDataCatalogSpecification.o)
"_OBJC_CLASS_$_DataCatalogService_GetSingleRowResponse", referenced from:
objc-class-ref-to-DataCatalogService_GetSingleRowResponse in libMSSharedLibrary.a(MSSingleRowResultsParser.o)
"_OBJC_CLASS_$_DataCatalogService_GetMultiRowResponse", referenced from:
objc-class-ref-to-DataCatalogService_GetMultiRowResponse in libMSSharedLibrary.a(MSMultiRowResultsParser.o)
"_OBJC_CLASS_$_DataCatalogService_GetMultiRow", referenced from:
objc-class-ref-to-DataCatalogService_GetMultiRow in libMSSharedLibrary.a(MSDataCatalogSpecification.o)
"_OBJC_CLASS_$_DataCatalogService_HelloWorldResponse", referenced from:
objc-class-ref-to-DataCatalogService_HelloWorldResponse in libMSSharedLibrary.a(DataCatalogService.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status**
奇怪的是,经过大量的项目清理(在应用程序和库项目中),我仍然遇到同样的问题。即使开始新项目后,问题仍然存在。
我还小心翼翼地在干净和构建之间重新启动 Xcode 几次,但效果不佳。
关于去哪里看有什么想法吗?
您是否已将库添加为项目的依赖项?看Xcode 3.1.1 和静态库
如果您深入了解目标,库名称是否出现在“链接二进制文件”中?
与图书馆”小组?
查看编译器/链接器输出的日志。找到对链接器的调用。您的库是否出现在要链接的静态库列表中?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)