Jeremy Huang
Jeremy Huang

Reputation: 221

App crashed on IOS 7.0 works fine on 7.1

I have built an app that works well on IOS 7.1 but when installed on IOS 7.0 it crashes with the following logs:

dyld: lazy symbol binding failed: Symbol not found: _OSAtomicDecrement32
      Referenced from: /var/mobile/Applications/80FCE91D-EAB5-4321-A157-4A05EA40C07C/MyAPP.app/MyAPP
      Expected in: /usr/lib/libSystem.B.dylib
Aug 16 14:42:00 LAWR3NCEde-iPhone MyAPP[14925] <Notice>: dyld: Symbol not found: _OSAtomicDecrement32
      Referenced from: /var/mobile/Applications/80FCE91D-EAB5-4321-A157-4A05EA40C07C/MyAPP.app/MyAPP
      Expected in: /usr/lib/libSystem.B.dylib

The app uses Facebook SDK and MSDynamicsViewController (Which uses UIKit). Any idea what this message mean ? And what is this OSAtomicDecrement32 ?

Upvotes: 4

Views: 395

Answers (1)

w0mbat
w0mbat

Reputation: 2459

OSAtomicDecrement32 is in OSAtomic.h. It is useful when implementing locks or retain counts in a multi-threaded program.

It's marked as being available on 7.1 and up only (on iPhone) which is why you are crashing.

__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_7_1)
int32_t OSAtomicDecrement32( volatile int32_t *__theValue );

Upvotes: 2

Related Questions