2018-07-06|2018-07-06 ios打包framework shell命令脚本 ar命令查看符号表
【2018-07-06|2018-07-06 ios打包framework shell命令脚本 ar命令查看符号表】来源 https://blog.csdn.net/wave_1102/article/details/47055909
FRAMEWORK_NAME="${PROJECT_NAME}"
FRAMEWORK_NAME="${PROJECT_NAME}"
SIMULATOR_LIBRARY_PATH="{BUILD_DIR}/{CONFIGURATION}-iphonesimulator/${FRAMEWORK_NAME}.framework"
DEVICE_LIBRARY_PATH="{BUILD_DIR}/{CONFIGURATION}-iphoneos/${FRAMEWORK_NAME}.framework"
UNIVERSAL_LIBRARY_DIR="{BUILD_DIR}/{CONFIGURATION}-iphoneuniversal"
FRAMEWORK="{UNIVERSAL_LIBRARY_DIR}/{FRAMEWORK_NAME}.framework"
xcodebuild -project {PROJECT_NAME}.xcodeproj -sdk iphonesimulator -arch i386 -arch x86_64 -target{FRAMEWORK_NAME} -configuration {CONFIGURATION} clean build CONFIGURATION_BUILD_DIR={BUILD_DIR}/${CONFIGURATION}-iphonesimulator | echo
xcodebuild -project {PROJECT_NAME}.xcodeproj -sdk iphoneos -arch arm64 -arch armv7 -arch armv7s -target{FRAMEWORK_NAME} -configuration {CONFIGURATION} clean build CONFIGURATION_BUILD_DIR={BUILD_DIR}/${CONFIGURATION}-iphoneos | echo
rm -rf "${UNIVERSAL_LIBRARY_DIR}"
mkdir "${UNIVERSAL_LIBRARY_DIR}"
mkdir "${FRAMEWORK}"
cp -r "{DEVICE_LIBRARY_PATH}/." "{FRAMEWORK}"
lipo "{SIMULATOR_LIBRARY_PATH}/{FRAMEWORK_NAME}" "{DEVICE_LIBRARY_PATH}/{FRAMEWORK_NAME}" -create -output "{FRAMEWORK}/{FRAMEWORK_NAME}" | echo
open "${FRAMEWORK}"
lipo -info
lipo ASIAIDCardReader -thin armv7-output ASIAIDCardReader.armv7
ar -t (也可以使用 ar -x 先cd到指定目录 将所有.o文件分离到指定的目录文件夹。)
ar -d -sv ASIAIDCardReader.armv7s AsyncSocket.o,即删除ASIAIDCardReader.armv7s下的 AsyncSocket.o二进制文件(你只需要替换成你自己的库文件名称和.o文件即可),同样对分离出来的.arm64、.armv7s进行同样的操作。
文件修改好了, 接下来我们需要把修改好的文件,全部再组合成我们原来的framework下的fat文件。使用命令
lipo-create -output ASIAIDCardReaderASIAIDCardReader.armv7sASIAIDCardReader.arm64 ASIAIDCardReader.armv7(此处需要把所有分离出来的文件都加上)
推荐阅读
- 2020-04-07vue中Axios的封装和API接口的管理
- iOS中的Block
- Beego打包部署到Linux
- 记录iOS生成分享图片的一些问题,根据UIView生成固定尺寸的分享图片
- 2019-08-29|2019-08-29 iOS13适配那点事
- Hacking|Hacking with iOS: SwiftUI Edition - SnowSeeker 项目(一)
- iOS面试题--基础
- 接口|axios接口报错-参数类型错误解决
- iOS|iOS 笔记之_时间戳 + DES 加密
- iOS,打Framework静态库