簡體   English   中英

為什么使用 XCode 4 為我的 iPhone 項目構建 static 庫時出現此錯誤?

[英]why do I get this error building a static library for my iPhone project using XCode 4?

我有一個現有的 iPhone 應用程序,我只想從代碼中創建一個 static 庫,以便我可以通過單獨的測試應用程序(在工作區中)使用它。 應用程序編譯得很好,但是當我嘗試編譯庫版本(具有相同的代碼文件)時,我收到以下錯誤:

  • 詞法或預處理器問題 - 未找到“MyClass.h”文件

但是,即使出現此錯誤,應用程序仍會運行。 事實上,當我編譯應用程序(使用 static 庫)時,它最初說沒有錯誤,然后在一兩秒后出現上述錯誤。

我基本上在做:

  1. 使用 Coco Touch Static 庫在項目中創建新目標
  2. 在目標“編譯源”中添加 .m 文件
  3. 在目標“復制標題”中添加 .h 文件
  4. 在“將二進制文件與庫鏈接”中添加相同的庫集
  5. Go 進入 Profile 並將 Target 修改為 RELEASE

有什么建議么? 我在這里錯過了一步嗎?

我將對此進行嘗試:-) 我認為可能是 MyClass.h 已設置為私有。 因此,當您創建 static 庫時,它不會添加到 header 目錄中。 您應該通過檢查 output header 目錄來檢查是否是這樣。 如果 header 文件丟失,那么很確定這是怎么回事。

其次,為什么要使用單獨的應用程序進行測試,因此需要構建一個 static 庫? 我有幾個 static 庫和應用程序,我使用GHUnit進行單元測試。 我只需添加一個新的應用程序目標並將其配置為運行 GHUnit iOS 應用程序即可。 然后我可以添加我想要測試的類和任何測試框架,例如OCMock ,而無需創建單獨的項目。 基本上聽起來你的測試方法可能比必要的復雜。 :-)

所以,問題原來是我在“其他鏈接標志”選項中設置了“-ObjC”,我把它放在那里,因為在某個階段試圖讓事情正常工作我讀到這是必需的 - 德里克斯建議審查編譯日志在這里運行良好

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM