iOS单元测试-从本机库访问函数的问题
我正在创建一个使用另一个Native-C库的包装器库项目。 我可以在其他应用程序中使用包装器库函数,通过它可以访问Native-C库中的函数 现在,在包装器库项目中,当我添加“单元测试”(使用OCUnit)时,它给出了本机C库中存在的所有函数的错误。仅在执行单元测试时出错 它显示的错误是 **架构i386的未定义符号: “_SQMT_FUNC_close”,引用自: _libWrapperLibraryAlter.a(wrapperAPI.o)中的funcClose 叮当声:错误:链接器命令失败,退出代码为1(使用-v查看调用)** 函数“funcClose”存在于当前包装器库项目(.m文件)中。函数“SQMT_FUNC_close”存在于本机C库项目(.C文件)中 单元测试执行显示所有本机C函数的错误 请帮助解决这个问题 Lirary路径:iOS单元测试-从本机库访问函数的问题,ios,xcode,testing,static-libraries,native,Ios,Xcode,Testing,Static Libraries,Native,我正在创建一个使用另一个Native-C库的包装器库项目。 我可以在其他应用程序中使用包装器库函数,通过它可以访问Native-C库中的函数 现在,在包装器库项目中,当我添加“单元测试”(使用OCUnit)时,它给出了本机C库中存在的所有函数的错误。仅在执行单元测试时出错 它显示的错误是 **架构i386的未定义符号: “_SQMT_FUNC_close”,引用自: _libWrapperLibraryAlter.a(wrapperAPI.o)中的funcClose 叮当声:错误:链接器命令失败
**/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -bundle -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk -L/work/Final_code/test/iOS/Debug-iphonesimulator -L/work/Final_code/test/iOS/iOSWrapper/../../Product/Library/iOS/Release-iphoneos -F/work/Final_code/test/iOS/Debug-iphonesimulator -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -filelist /work/Final_code/test/iOS/Build/Intermediates/iOSWrapper.build/Debug-iphonesimulator/wrapperTests.build/Objects-normal/i386/wrapperTests.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=5.0 -liOSWrapper -lHomeLittle -framework SenTestingKit -framework Foundation -framework UIKit -o /work/Final_code/iOS/Debug-iphonesimulator/wrapperTests.octest/wrapperTests**
iOSWrapper-是我正在测试的当前包装器库。
HomeLittle-是本机C库您可以添加-L-L吗?您的本机库应该有一个名称lib,然后添加它,就像-lexebook:i添加了库路径一样。请检查。您是否可以检查编译器报告在转到
未定义符号之前是否找不到库HomeLittle
?您确定HomeLittle实际上已编译到libHomeLittle.o中?您还可以检查libHomeLittle.o arch。(你可以在上面找到如何做)exebook:在给出错误之前,出现了以下警告。ld:警告:忽略文件/work/Final_代码/Product/Library/iOS/Release iphoneos/libHomeLittle.a,在文件/work/Final_代码/Product/Library/iOS/Release iphoneos/libHomeLittle.a中缺少必需的体系结构i386(2片)
**/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -bundle -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk -L/work/Final_code/test/iOS/Debug-iphonesimulator -L/work/Final_code/test/iOS/iOSWrapper/../../Product/Library/iOS/Release-iphoneos -F/work/Final_code/test/iOS/Debug-iphonesimulator -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -filelist /work/Final_code/test/iOS/Build/Intermediates/iOSWrapper.build/Debug-iphonesimulator/wrapperTests.build/Objects-normal/i386/wrapperTests.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=5.0 -liOSWrapper -lHomeLittle -framework SenTestingKit -framework Foundation -framework UIKit -o /work/Final_code/iOS/Debug-iphonesimulator/wrapperTests.octest/wrapperTests**