2016-08-30 3 views
0

У меня возникли проблемы при создании архива из (устаревшего) проекта iOS. В то время как архивирование я получаю следующее сообщение об ошибке:Проблемы с архивированием проекта iOS: libz.dylib не найден

Libtool /Users/appcell/Library/Developer/Xcode/DerivedData/elho-ctuevlyyxtyssvblxkqezbfgdtyq/Build/Intermediates/ArchiveIntermediates/Elho/IntermediateBuildFilesPath/PSPDFKit-lib.build/Release-iphoneos/PSPDFKit.build/Objects-normal/armv7/libPSPDFKit.a normal armv7 
cd /Users/appcell/Documents/Projects/Elho/Libraries/PSPDFKit 
export IPHONEOS_DEPLOYMENT_TARGET=5.0 
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool -static -arch_only armv7 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk -L/Users/appcell/Library/Developer/Xcode/DerivedData/elho-ctuevlyyxtyssvblxkqezbfgdtyq/Build/Intermediates/ArchiveIntermediates/Elho/BuildProductsPath/Release-iphoneos -filelist /Users/appcell/Library/Developer/Xcode/DerivedData/elho-ctuevlyyxtyssvblxkqezbfgdtyq/Build/Intermediates/ArchiveIntermediates/Elho/IntermediateBuildFilesPath/PSPDFKit-lib.build/Release-iphoneos/PSPDFKit.build/Objects-normal/armv7/PSPDFKit.LinkFileList /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/usr/lib/libz.dylib -framework AssetsLibrary -framework CoreMedia -framework AVFoundation -framework ImageIO -framework MediaPlayer -framework CoreText -framework CoreGraphics -weak_framework UIKit -framework MessageUI -framework QuartzCore -framework Foundation -o /Users/appcell/Library/Developer/Xcode/DerivedData/elho-ctuevlyyxtyssvblxkqezbfgdtyq/Build/Intermediates/ArchiveIntermediates/Elho/IntermediateBuildFilesPath/PSPDFKit-lib.build/Release-iphoneos/PSPDFKit.build/Objects-normal/armv7/libPSPDFKit.a 

error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: can't open file: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/usr/lib/libz.dylib (No such file or directory) 

Когда я создаю ссылку frrom в /usr/lib/libz.dylib файл /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/usr/lib (который используется для работы в прошлом), теперь я получаю следующее сообщение об ошибке:

ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/usr/lib/libz.dylib, missing required architecture armv7 in file /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/usr/lib/libz.dylib (2 slices) 
Undefined symbols for architecture armv7: 
"_deflateInit_", referenced from: 
    -[NSData(PSPDFCompression) pspdf_zlibDeflate] in libPSPDFKit.a(NSData+PSPDFCompression.o) 
"_deflate", referenced from: 
    -[ASIDataCompressor compressBytes:length:error:shouldFinish:] in ASIDataCompressor.o 
    -[NSData(PSPDFCompression) pspdf_zlibDeflate] in libPSPDFKit.a(NSData+PSPDFCompression.o) 
"_deflateInit2_", referenced from: 
    -[ASIDataCompressor setupStream] in ASIDataCompressor.o 
"_inflate", referenced from: 
    _unzReadCurrentFile in unzip.o 
    -[ASIDataDecompressor uncompressBytes:length:error:] in ASIDataDecompressor.o 
    -[NSData(PSPDFCompression) pspdf_zlibInflate] in libPSPDFKit.a(NSData+PSPDFCompression.o) 
"_get_crc_table", referenced from: 
    _unzOpenCurrentFile3 in unzip.o 
"_inflateEnd", referenced from: 
    _unzCloseCurrentFile in unzip.o 
    -[ASIDataDecompressor closeStream] in ASIDataDecompressor.o 
    -[NSData(PSPDFCompression) pspdf_zlibInflate] in libPSPDFKit.a(NSData+PSPDFCompression.o) 
"_crc32", referenced from: 
    _unzReadCurrentFile in unzip.o 
"_inflateInit_", referenced from: 
    -[NSData(PSPDFCompression) pspdf_zlibInflate] in libPSPDFKit.a(NSData+PSPDFCompression.o) 
"_deflateEnd", referenced from: 
    -[ASIDataCompressor closeStream] in ASIDataCompressor.o 
    -[NSData(PSPDFCompression) pspdf_zlibDeflate] in libPSPDFKit.a(NSData+PSPDFCompression.o) 
"_inflateInit2_", referenced from: 
    _unzOpenCurrentFile3 in unzip.o 
    -[ASIDataDecompressor setupStream] in ASIDataDecompressor.o 
ld: symbol(s) not found for architecture armv7 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

У кого-нибудь были такие же проблемы?

+0

Вы используете Xcode 7.x.x? Если YES, выберите цель проекта -> Общие -> Связанные рамки и библиотеки. Нажмите кнопку «+» и выберите «libz.tbd» –

+0

@Gagan_iOS Благодарим за помощь. Он уже был добавлен в список, но после удаления и добавления он по-прежнему дает ту же ошибку: 'libz.dylib' отсутствует. –

ответ

0

PSPDFKit основатель здесь. В нашем PDF SDK используется libz, поэтому либо ссылка с libz.dylib (которая была переименована в более поздних версиях Xcode, чтобы быть libz.tbd) или добавить флаг компоновщика -lz, который должен als сделать трюк.

Если вы обновите наш SDK до последней версии, все это произойдет автоматически, так как мы используем динамическую структуру, которая уже знает, какие зависимости он требует.

+0

Спасибо за помощь. Я добавил 'libz.tbd', а также добавил флаг' -lz', но не повезло. Он по-прежнему дает ту же ошибку: 'невозможно открыть файл: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/usr/lib/libz.dylib (Нет такого файла или каталога) ' –

+0

Попробуйте Xcode 8 или другой Mac. Похоже на странную проблему. – steipete