2014-12-25 65 views
0

我在使用AAF SDK將Xcode項目與MacOS 10.9.5上的Xcode 5.1.1鏈接時遇到問題。當我鏈接的主要動態庫,這些符號上來丟失:MacOS上的StgCreateDocfile等10.9.5

_StgCreateDocfile _StgCreateDocfileOnILockBytes _StgOpenStorage _StgOpenStorageOnILockBytes AssertProc

我不能在整個源代碼樹的SDK任何地方他們找到一個定義。前四個似乎是Windows上的結構化存儲的一部分。 SDK中提供了一個結構化存儲庫,我已經鏈接了它。

誰能告訴我一個定義這些的Mac系統庫嗎?還是有一個鏈接器參數爲他們拉入一個庫?謝謝你的幫助。 (!)

+0

如果您使用您使用的SDK標記此問題,您可能會得到更好的答案。 Xcode是一個IDE,與您試圖使用的任何SDK無關。 –

回答

0

逾期答案,但萬一有人遇到這個...該解決方案可以是:

  1. 要使用與AAF SDK的生成文件生成AAF dylib, 其中工程精細。或...

  2. 如果使用Xcode中構建AAF SDK,確保正確的 #defines保持,即:

    _DEBUGOM_DEBUGOM_STACK_TRACE_ON_ASSERTOM_USE_SCHEMASOFT_SSOM_STRUCTURED_STORAGE

    注意DEBUG=1不存在(它是Xcode默認添加) - 如果已定義,則會導入AssertProc。在發佈版本上定義NDEBUG並省略調試定義。 正如您所述,Stg ...函數是結構化存儲的MS實現的一部分,但不應在Mac上引用Schemasoft實現。