2012-10-31 148 views
7

我試圖在Ipad上部署一個項目,其中包含名爲「HelloUnity.framework」的自制框架。ld:框架未找到(自制框架)

當我嘗試部署項目中,我得到以下錯誤:

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 

而且我不知道爲什麼,因爲我的框架存在,框架的文件夾不是空的。 有什麼不對?

感謝,

回答

0

因爲iOS不支持共享庫,你需要確保你的框架正在編制靜態librar。

我不知道這部分,但是您可能需要對靜態庫,而不是框架進行鏈接(即「-framework HelloUnity」可能不是,即使你的框架是靜態的好。)

0

我相信框架沒有被正確構建。我懷疑在構建框架時VALID_ARCHS還沒有從項目文件中刪除。還要檢查構建活動體系結構是否設置爲否

+0

您是否有關於刪除VALID_ARCHS的更多信息?你爲什麼需要這樣做? – martin308

+0

@ Martin308我不太確定,因爲我已經很久很久以前做過了,但我認爲它提到了使用該框架的有效體系結構。由於這是一個使用框架的工作(通常用於桌面環境)框架構建將包含元數據,指出「該框架必須用於桌面應用程序」,我們必須修改此行,以便我們可以在移動應用程序中使用它。 –