Линт библиотеки Pod не работает для xcframework

#ios #cocoapods #xcframework

Вопрос:

У меня есть проект xcode со статической библиотекой и решением aggregate, в котором я добавил многоплатформенный скрипт на этапах сборки, чтобы я мог создавать xcframework:

 SCHEME_NAME=${PROJECT_NAME} FRAMEWORK_NAME=${PROJECT_NAME} SIMULATOR_ARCHIVE_PATH="${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-iphonesimulator.xcarchive" DEVICE_ARCHIVE_PATH="${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-iphoneos.xcarchive" # Simulator xcarchieve xcodebuild archive   -scheme ${SCHEME_NAME}   -archivePath ${SIMULATOR_ARCHIVE_PATH}   -sdk iphonesimulator   SKIP_INSTALL=NO   BUILD_LIBRARY_FOR_DISTRIBUTION=YES  # Device xcarchieve xcodebuild archive   -scheme ${SCHEME_NAME}   -archivePath ${DEVICE_ARCHIVE_PATH}   -sdk iphoneos   SKIP_INSTALL=NO   BUILD_LIBRARY_FOR_DISTRIBUTION=YES  # Remove older version rm -rf "${HOME}/Desktop/${FRAMEWORK_NAME}_${APPOXEE_SDK_VERSION}"  # Create Products amp;amp; Documentation amp;amp; SDK directories mkdir -p "${HOME}/Desktop/${FRAMEWORK_NAME}_${APPOXEE_SDK_VERSION}/Documentation" mkdir -p "${HOME}/Desktop/${FRAMEWORK_NAME}_${APPOXEE_SDK_VERSION}/SDK"  # Create xcframwork combine of all frameworks xcodebuild -create-xcframework   -library ${SIMULATOR_ARCHIVE_PATH}/Products/usr/local/lib/lib${FRAMEWORK_NAME}.a -headers ${SIMULATOR_ARCHIVE_PATH}/Products/usr/local/lib/${FRAMEWORK_NAME}Headers   -library ${DEVICE_ARCHIVE_PATH}/Products/usr/local/lib/lib${FRAMEWORK_NAME}.a -headers ${DEVICE_ARCHIVE_PATH}/Products/usr/local/lib/${FRAMEWORK_NAME}Headers  -output ${HOME}/Desktop/${FRAMEWORK_NAME}_${APPOXEE_SDK_VERSION}/SDK/${FRAMEWORK_NAME}.xcframework  

что прекрасно создает xcframework. Внутри этой xcframework есть информация.plist введите описание изображения здесь

в котором говорится, что вся архитектура arm64, armv7 и i386, x86_64 присутствуют в xcfremework, те же результаты, которые я получаю, когда делаю lipo-info

Файл Подспец выглядит так:

 Pod::Spec.new do |s|   s.name = "TestSDK"  s.version = "6.0.4"  s.summary = "Test SDK enables developers to harnest the full power of Test Engage Platform on their iOS applications."  s.description = lt;lt;-DESC  Test SDK enables push notification in your iOS application, for engaging your application users and increasing retention.  DESC  s.homepage = "https://mapp.com"  s.license = { :type =gt; "Custom", :file =gt; "Licence.txt" }  s.author = { "Test Digital" =gt; "https://test.com/contact-us/" }  s.source = { :git =gt; "https://github.com/TestCloud/TestSDK.git", :tag =gt; "6.0.4" }  s.ios.framework = 'UserNotifications'  s.platform = :ios, "10.0"  s.ios.vendored_frameworks = "SDK/TestSDK.xcframework"  s.preserve_paths = 'SDK/TestSDK.xcframework'  s.resource_bundle = { 'TestSDKResources' =gt; 'SDK/TestSDKResources.bundle' }  s.requires_arc = true  end  

and pod lib lint returns me an error: Unable to find matching .xcframework slice in ‘../../../../../../../../Users/ssad.ter/Desktop/private_pod/TestSDK/SDK/TestSDK.xcframework RwarSDK library ios-arm64_armv7 ios-i386_x86_64-simulator’ for the current build architectures (arm64 x86_64 i386).

but it contains those architecture as I explained.

единственный способ, когда pod lib lint прошел успешно, — это когда я добавляю в pod lib lint —конфигурация=Отладка

Но из сценария вы можете видеть, что для сборки для распространения установлено значение ДА, а для ПРОПУСКА УСТАНОВКИ-НЕТ, то же самое делается в настройках сборки в XCode. И архив, когда вы переходите к опции Редактирования схемы в XCode, настроен на режим выпуска.

Может ли кто-нибудь указать мне, в чем здесь может быть проблема?