我在我的可可項目中使用非常有用的ID3框架。有一件我想修改的小東西,但我似乎無法獲得我爲應用於構建的框架所做的更改。如何正確修改自定義可可框架?
框架提供的源代碼配備了一個Xcode項目,所以我已經打開,最多和testings清酒在把一個NSLog(@"hello");
。這是definetly在一個地方,它就會被調用,還有其他NSLog()
電話顯示的框架不僅僅是控制檯輸出被抑制。
要構建一次修改的框架,我首先清理了構建文件夾,確保它實際上刪除了文件,然後構建它。然後在我使用框架的Xcode項目中,我刪除了舊的引用,並在剛剛構建的框架中添加了一個新引用。用新建的框架運行我的項目不會調用修改的框架代碼。我已經嘗試使用作爲框架Xcode項目一部分的開發和部署構建。
我的直覺是框架代碼編譯成的可執行文件以某種方式被緩存。但是因爲我對框架的工作還不熟悉,所以我不太確定在哪裏尋找。
對,我無法讓otool工作出於某種原因,但DYLD_PRINT_LIBRARIES非常有用,並且表明它正從Library/Frameworks /中加載。它似乎堅持在那裏(即如果我從那裏刪除它不會編譯),但我可以簡單地複製框架的新構建,並且它工作正常。非常感謝你。 – Septih 2010-03-18 11:04:25
它希望從那裏加載框架的原因是它是框架'INSTALL_PATH'構建設置。使用'otool -L/Library/Frameworks/ID3.framework/ID3'應該顯示框架安裝路徑(第一行輸出)。您並不總是必須在那裏複製框架,您可以使用框架構建目錄中的那個。爲了讓你的主要可執行文件加載這個框架,還有另一個環境變量:'DYLD_FRAMEWORK_PATH'。請參閱'man dyld' – 2010-03-18 11:12:55