2013-10-30 69 views
2

MediaAccessibility框架已添加到SDK7中,我想使用它。然而,我們的測試編譯系統仍然使用xcode 4,我仍然需要它來工作。Xcode 4中弱連接MediaAccessibility框架失敗

爲了支持這個兩個iOS6的和iOS7,我弱環這樣在我的GYP文件框架:

'xcode_settings': { 
    'OTHER_LDFLAGS': ['-weak_framework MediaAccessibility'], 
    }, 

它建立在Xcode 5時工作正常,我可以建立iOS7目標和iOS6的目標沒有問題。對於iOS7目標,這些方法可以像預期的那樣得到,對於iOS6目標,由於框架是弱鏈接的,因此方法不可用。都好。

但在Xcode 4,它構建失敗,:

LD:找不到MediaAccessibility

框架有什麼辦法,我得到的Xcode 4做「弱鏈接」的這個相當於SDK6中不存在的框架?

回答

2

與框架的弱連接要求該框架存在於您用來構建的SDK中。

您可以使用其他鏈接器標誌的SDK特定設置。這將增加-weak_framework當SDK爲iOS 7以上版本,當SDK是的iOS 6。xcodeproj可能看起來像這樣不會增加它:

"OTHER_LDFLAGS[sdk=*]" = (
    "-weak_framework", 
    MediaAccessibility, 
); 
"OTHER_LDFLAGS[sdk=iphonesimulator6.1]" = ""; 
"OTHER_LDFLAGS[sdk=iphoneos6.1]" = ""; 
+0

可能的工作,但我們使用GYP。我無法找到一種方法,因此我們最終只是將所有內容都提前一點移交給iOS7 SDK。 – kgreenek