簡體   English   中英

在OS X上創建和使用靜態庫

[英]Create and use static library on OS X

好吧,我正在嘗試創建一個Cocoa庫(靜態)並使用,但我不斷收到錯誤。

我創建了一個超級基本靜態庫( TSXLib ),其中只有一個附加類。

#import <Foundation/Foundation.h>

@interface ClassOne : NSObject

- (void)doIt;

@end

#import "ClassOne.h"

@implementation ClassOne

- (void)doIt
{
    NSLog(@"Oops... I did it again!");
}

@end

然后,我將動態庫安裝名稱 (在構建設置中)設置為:

@executable_path/../Frameworks/libTSXLib.a

現在在我的測試項目中:

  • libTSXLib.a文件(並將其復制到目標)
  • 添加了構建階段(復制文件),我將libTSXLib.a復制到Frameworks
  • 然后我去AppDelegate.m並嘗試導入我的庫的類
  • #import <ClassOne.h> ,編譯器拋出一個無法找到類的錯誤

有任何想法嗎?


注意: 我實際上對庫,框架等很困惑(這就是為什么我傾向於盡可能地避免它們)。 我所要做的就是打包一些類/函數,以便我可以輕松地在不同的項目中重用它們。 無論是框架還是圖書館,我都不在乎。 我需要的是:打包並重新使用我的代碼。 (阻止任何人看到/使用內容時捆綁的能力將是一個加號)

好的,所以,經過一段時間后回來,這就是我做的工作:

第1步:創建庫

  • 使用內置的Cocoa Library模板創建一個新項目
  • 庫類型設置為靜態
  • 添加您的類/函數/隨便
  • Build Phases下 ,請注意哪些標題將變為Public

第2步:在測試項目中使用庫

  • 將最終的.a庫文件拖放到項目中(如果將其復制到目標目錄則無關緊要)
  • 鏈接到圖書館
  • 用戶標題搜索路徑更新為初始Library .a文件源(使用遞歸(例如/the/path/to/your/library/folder/**
  • 設置始終將用戶路徑搜索YES
  • Build Settings下將-ObjC其他鏈接器標志

暫無
暫無

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

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