ld:找不到框架(自制框架)

时间:2012-10-31 09:31:43

标签: ios xcode frameworks

我正在尝试在Ipad上部署一个项目,其中包含一个名为“HelloUnity.framework”的自制框架。

当我尝试部署项目时,出现以下错误:

ld: framework not found HelloUnity clang: error: linker command failed
with exit code 1 (use -v to see invocation)

更具体:

Ld /Users/LabInnovation/Library/Developer/Xcode/DerivedData/Unity-iPhone-akzhbmwtkcooizfaebdhmbyuhrbk/Build/Products/test.app/test normal armv7
    cd /Users/LabInnovation/IpadWii/IpadWii
    setenv IPHONEOS_DEPLOYMENT_TARGET 2.2.1
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk -L/Users/LabInnovation/Library/Developer/Xcode/DerivedData/Unity-iPhone-akzhbmwtkcooizfaebdhmbyuhrbk/Build/Products -L/Users/LabInnovation/IpadWii/IpadWii -L/Users/LabInnovation/IpadWii/IpadWii/Libraries -F/Users/LabInnovation/Library/Developer/Xcode/DerivedData/Unity-iPhone-akzhbmwtkcooizfaebdhmbyuhrbk/Build/Products -F/Users/LabInnovation/IpadWii/IpadWii/../../Desktop -F/Users/LabInnovation/IpadWii/IpadWii -filelist /Users/LabInnovation/Library/Developer/Xcode/DerivedData/Unity-iPhone-akzhbmwtkcooizfaebdhmbyuhrbk/Build/Intermediates/Unity-iPhone.build/Debug-iphoneos/Unity-iPhone.build/Objects-normal/armv7/test.LinkFileList -dead_strip -all_load -weak_framework CoreMotion -weak-lSystem -fobjc-link-runtime -miphoneos-version-min=2.2.1 -framework Foundation -framework UIKit -framework OpenGLES -framework QuartzCore -framework OpenAL -liconv.2 -liPhone-lib -framework AudioToolbox -framework CFNetwork -framework MediaPlayer -framework CoreLocation -framework SystemConfiguration -weak_framework iAd -framework CoreMedia -framework CoreVideo -framework HelloUnity -weak_framework AVFoundation -framework CoreGraphics -weak_framework CoreMotion -weak_framework GameKit -o /Users/LabInnovation/Library/Developer/Xcode/DerivedData/Unity-iPhone-akzhbmwtkcooizfaebdhmbyuhrbk/Build/Products/test.app/test

我不知道为什么,因为我的框架存在且框架的文件夹不为空。 有什么问题?

谢谢,

2 个答案:

答案 0 :(得分:0)

由于iOS不支持共享库,因此您需要确保您的框架正在编译为静态库。

我不确定这部分,但你可能不得不链接静态库而不是框架(即,即使你的框架是静态的,'-framework HelloUnity'也可能不好。)

答案 1 :(得分:0)

我确信框架没有正确构建。我怀疑在构造框架时还没有从项目文件中删除VALID_ARCHS。还要检查构建活动体系结构是否设置为NO