2013-03-23 40 views
1

好吧,所以背景,我自己下載了http://www.opensource.apple.com/source/curl/curl-68/的副本,並且已經配置,編譯並將其安裝在自己的機器上,現在我想做的是以包的形式製作一個簡單的可再發行組件,以便我可以將它用作我作爲應用程序的一部分創建的自己的包的需求。請注意我之所以這樣做的原因是,這是在獅子山發現的捲曲的新版本。使用PackageMaker(OS X)爲製作項目創建一個安裝程序

這是什麼最好的方法呢?

我只是簡單地在分發包中創建一個文件夾結構,將所有創建的文件放在正確的位置並具有正確的權限?

我需要做一個腳本,因爲最終它似乎是「make install的」目標提出,他們需要通過使用「的/ usr/bin中/安裝」大多數文件,我不熟悉使用linux這個概念?

請注意,我對PackageMaker的概念也很新穎,因此您必須清楚所提及的任何功能。另一個小問題,我假設沒有懶惰的方式強制make目標爲我創建文件夾結構,而不是自己重新創建它?

回答

0

你可能會需要使用第一種方法,因爲有可能是目標機器上沒有化妝工具(據我知道這是Xcode的命令行實用程序的一部分)

編輯:和可能是你不應該向客戶提供最新版本的curl,只需在文檔中添加要求即可。用戶可以根據需要安裝它(例如使用brew)。或者可能是靜態鏈接是你的解決方案(但我不知道你如何使用curl)。

編輯2:對於靜態鏈接,只需啓動curl-config --static-libs並將輸出添加到鏈接器標誌。你可以使用命令otool -L <your_binary>來查看依賴關係,如果沒有捲曲 - 比你靜態鏈接的還要多

+0

不,這是真的對不起,可能並不清楚我的意思是在做什麼之後讓它安裝它會執行大部分安裝文件通過如下命令: /usr/bin/install -c .libs/libcurl.4.dylib /usr/local/lib/libcurl.4.dylib 是否需要使安裝程序包的功能與不會損壞某些OS X的文件索引? – 2013-03-23 10:00:32

+0

不,因爲我寧願使用正式的Apple設置源代碼來使用brew或者ports,因爲我希望安裝過程簡單,brew和ports也使用/ opt,所以我編譯的任何東西都可以鏈接到不同的庫 – 2013-03-23 10:07:24

+0

我不喜歡不認爲用你的系統替換系統庫是個好主意。其他一些應用程序可能依賴於該捲曲的版本。可能只是把它放在其他文件夾中,並使用它而不是系統的? – cody 2013-03-23 10:07:29

相關問題