打包自己的framework(Xcode7&OSX10.11)兼容各種cpu類型

作者原路徑:http://www.jianshu.com/p/1cb4c4fe5481


網絡上好多教程都不能用了,花了一天時間自己去填坑,怒分享之。

我借鑑了好多資料,謝謝你們啦。


第一步:新建Framework項目

第二步:編寫代碼,構建完成項目

第三步:新建一個我們用來運行編譯腳本的Target

第四步:在新建的Target裏邊添加一個腳本

第五步:填入腳本

第六步:運行並根據需要編譯
# Sets the target folders and the final framework product.
# 如果工程名稱和Framework的Target名稱不一樣的話,要自定義FMKNAME
# 例如: FMK_NAME = "MyFramework"
FMK_NAME=${PROJECT_NAME}

# Install dir will be the final output to the framework.
# The following line create it in the root folder of the current project.
INSTALL_DIR=${SRCROOT}/Products/${FMK_NAME}.framework

# Working dir will be deleted after the framework creation.
WRK_DIR=build
DEVICE_DIR=${WRK_DIR}/Release-iphoneos/${FMK_NAME}.framework
SIMULATOR_DIR=${WRK_DIR}/Release-iphonesimulator/${FMK_NAME}.framework

# -configuration ${CONFIGURATION}
# Clean and Building both architectures.
xcodebuild -configuration "Release" -target "${FMK_NAME}" -sdk iphoneos -arch armv7 -arch armv7s -arch arm64 clean build
xcodebuild -configuration "Release" -target "${FMK_NAME}" -sdk iphonesimulator -arch x86_64 clean build

# Cleaning the oldest.
if [ -d "${INSTALL_DIR}" ]
then
rm -rf "${INSTALL_DIR}"
fi

mkdir -p "${INSTALL_DIR}"

cp -R "${DEVICE_DIR}/" "${INSTALL_DIR}/"

# Uses the Lipo Tool to merge both binary files (i386 + armv6/armv7) into one Universal final product.
lipo -create "${DEVICE_DIR}/${FMK_NAME}" "${SIMULATOR_DIR}/${FMK_NAME}" -output "${INSTALL_DIR}/${FMK_NAME}"

rm -r "${WRK_DIR}"

open "${SRCROOT}/Products/"

檢測類庫支持的版本(注意指向framework內部)

lipo -info ~/Documents/SFMapKit/Products/SFMapKit.framework/SFMapKit


文/一個熟悉而又陌生的人(簡書作者)
原文鏈接:http://www.jianshu.com/p/1cb4c4fe5481
著作權歸作者所有,轉載請聯繫作者獲得授權,並標註“簡書作者”。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章