This is driving me crazy, when i try to compile on the simulator, everything is ok, but on the device i got this error:
ld: library not found for -lz
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/clang failed with exit code 1
Please help me understand the source of the problem:
Ld /Users/ZConsulting/Library/Developer/Xcode/DerivedData/Fontenay-sous-Bois-dhlecgdgtoldsadoctkyueriyius/Build/Products/Debug-iphoneos/Fontenay-sous-Bois.app/Fontenay-sous-Bois normal armv7
cd /Users/ZConsulting/Desktop/Fontenay-sous-Bois
setenv IPHONEOS_DEPLOYMENT_TARGET 5.0
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/clang -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk -L/Users/ZConsulting/Library/Developer/Xcode/DerivedData/Fontenay-sous-Bois-dhlecgdgtoldsadoctkyueriyius/Build/Products
/Debug-iphoneos -F/Users/ZConsulting/Library/Developer/Xcode/DerivedData/Fontenay-sous-Bois-dhlecgdgtoldsadoctkyueriyius/Build/Products/Debug-iphoneos -F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs
/iPhoneOS5.0.sdk/Developer/Library/Frameworks -filelist /Users/ZConsulting/Library/Developer/Xcode/DerivedData/Fontenay-sous-Bois-dhlecgdgtoldsadoctkyueriyius/Build/Intermediates/Fontenay-sous-Bois.build/Debug-iphoneos/Fontenay-sous-Bois.build/Objects-normal/armv7/Fontenay-sous-Bois.LinkFileList -dead_strip -fobjc-arc -miphoneos-version-min=5.0 -framework SenTestingKit -lz -lz.1.1.3 -framework MobileCoreServices
-framework SystemConfiguration -framework CFNetwork -framework CoreLocation -framework MapKit -framework UIKit -framework Foundation -framework CoreGraphics -o /Users/ZConsulting/Library/Developer/Xcode/DerivedData/Fontenay-sous-Bois-dhlecgdgtoldsadoctkyueriyius/Build/Products/Debug-iphoneos/Fontenay-sous-Bois.app/Fontenay-sous-Bois
EDIT:
I did import the libz.1.1.3.dylib framework:
The only libz that i got in the Linked frameworks is the libz.1.1.3.dylib
You did specify the library libz.dylib
in the Linked frameworks and Libraries
item rather than the direct reference to libz.1.1.3
- in general you should use the most generic version of a library for compilation rather than a more specific one
Secondly, make sure that the libz.dylib
is present under the iOS SDK - if it's missing, then it may be a mis-installed SDK (reinstall should fix that).
i.e.
find /Developer/Platforms -name libz.dylib
should result in a non-empty output for a libz.dylib
under iPhoneOS5.0.sdk
Also see the answer to iPhone - Linker Error in Xcode 4.2 Preview, which is a similar issue to this.
i got the same error with a different library:
ld: library not found for -lssl
clang: error: linker command failed with exit code 1 (use -v to see invocation)
to resolve this, under search paths
-> user header search paths
-> release
i put:
"$(BUILD_ROOT)/../IntermediateBuildFilesPath/UninstalledProducts/include"
keep in mind that I get this bug only when I archive, and my archive is a based off my release scheme..
update:
I got the same problem (on a different occasion/project) for the lpods
Library (ie cocoapods).. the way i figured out to solve this is by realizing that the build worked fine on my development
scheme but not my debug
scheme. basically the development
scheme had no for build active architectures only
whereas debug
had yes. I simply changed debug
to no in all the targets under cocoapods
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With