App Store Connect AVFAudio warning (solved)

Exporting an .ipa with Defold 1.2.184 produces this Testflight warning:

ITMS-90863: Apple silicon Macs support issue - The app links with libraries that are not present on Mac:

Any idea what causes this warning?

My guess is that one of your dependencies use that framework (perhaps indirectly)

You can list the linked dependencies with otool -L dmengine (or what ever the name of your executable is)

1 Like

It looks like we found the culprit: A new option on the dashboard allows apps to be run on Macs, which seems to be causing the warning (f the “Make this app available” checkbox is ticked):

It might not be relevant based on the above, but these are the dependencies extracted with otool just in case:

||/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 905.6.0)|
|---|---|
||/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)|
||/usr/lib/libsqlite3.dylib (compatibility version 9.0.0, current version 321.3.0)|
||/System/Library/Frameworks/OpenGLES.framework/OpenGLES (compatibility version 1.0.0, current version 1.0.0)|
||/System/Library/Frameworks/OpenAL.framework/OpenAL (compatibility version 1.0.0, current version 1.0.0)|
||/System/Library/Frameworks/QuartzCore.framework/QuartzCore (compatibility version 1.2.0, current version 1.11.0)|
||/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics (compatibility version 64.0.0, current version 1463.4.1)|
||/System/Library/Frameworks/AudioToolbox.framework/AudioToolbox (compatibility version 1.0.0, current version 1000.0.0)|
||/System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration (compatibility version 1.0.0, current version 1109.100.4)|
||/System/Library/Frameworks/CoreVideo.framework/CoreVideo (compatibility version 1.2.0, current version 1.5.0)|
||/System/Library/Frameworks/UIKit.framework/UIKit (compatibility version 1.0.0, current version 4218.1.100, weak)|
||/System/Library/Frameworks/CoreTelephony.framework/CoreTelephony (compatibility version 1.0.0, current version 0.0.0)|
||/System/Library/Frameworks/Security.framework/Security (compatibility version 1.0.0, current version 59754.100.106)|
||/System/Library/Frameworks/StoreKit.framework/StoreKit (compatibility version 1.0.0, current version 1.0.0, weak)|
||/System/Library/Frameworks/Foundation.framework/Foundation (compatibility version 300.0.0, current version 1775.118.101, weak)|
||/System/Library/Frameworks/AppTrackingTransparency.framework/AppTrackingTransparency (compatibility version 1.0.0, current version 1.0.0, weak)|
||/System/Library/Frameworks/AVFoundation.framework/AVFoundation (compatibility version 1.0.0, current version 2.0.0)|
||/System/Library/Frameworks/CoreMedia.framework/CoreMedia (compatibility version 1.0.0, current version 1.0.0)|
||/System/Library/Frameworks/GameKit.framework/GameKit (compatibility version 1.0.0, current version 785.20.0)|
||/System/Library/Frameworks/AdSupport.framework/AdSupport (compatibility version 1.0.0, current version 1.0.0, weak)|
||/System/Library/Frameworks/Accelerate.framework/Accelerate (compatibility version 1.0.0, current version 4.0.0)|
||/System/Library/Frameworks/Accounts.framework/Accounts (compatibility version 1.0.0, current version 1.0.0, weak)|
||/System/Library/Frameworks/Social.framework/Social (compatibility version 1.0.0, current version 87.0.0, weak)|
||/usr/lib/libresolv.9.dylib (compatibility version 1.0.0, current version 1.0.0)|
||/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)|
||/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1292.100.5)|
||/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation (compatibility version 150.0.0, current version 1775.118.101)|
||/System/Library/Frameworks/CoreImage.framework/CoreImage (compatibility version 1.0.0, current version 5.0.0)|
||/System/Library/Frameworks/CoreMotion.framework/CoreMotion (compatibility version 1.0.0, current version 2420.16.24)|
||/System/Library/Frameworks/Metal.framework/Metal (compatibility version 1.0.0, current version 244.116.1)|
||/System/Library/Frameworks/MetalKit.framework/MetalKit (compatibility version 1.0.0, current version 148.1.0)|
||/System/Library/Frameworks/Photos.framework/Photos (compatibility version 1.0.0, current version 340.0.220)|
||/System/Library/Frameworks/WebKit.framework/WebKit (compatibility version 1.0.0, current version 611.1.21)|
||@rpath/libswiftCore.dylib (compatibility version 1.0.0, current version 1205.0.24)|
||@rpath/libswiftFoundation.dylib (compatibility version 1.0.0, current version 25.102.0)|
||@rpath/libswiftObjectiveC.dylib (compatibility version 1.0.0, current version 1.0.0)|
1 Like

Hi, I am new to Defold and is trying to launch any project on iOS device. I am getting this error when trying launch the Colorslide tutorial example project using ios-deploy.

dyld: dependent dylib '/System/Library/Frameworks/AVFAudio.framework/AVFAudio' not found for '/private/var/containers/Bundle/Application/1EA40866-491E-4227-9FD0-DE57860F603F/Colorslide tutorial.app/Colorslidetutorial', tried but didn't find: '/System/Library/Frameworks/AVFAudio.framework/AVFAudio' '/System/Library/Frameworks/AVFAudio.framework/AVFAudio'

The signing seem to work.
Not sure where to go from here, so any help is appreciated.

EDIT: The errors happens on an iPhone X. I now tried with an iPhone 12 Pro Max and it works. Not sure why there would be a difference in installed frameworks. Perhaps it something depending on XCode version or something? Hmm…

Welcome!

Which iOS versions are those phones running?

Which version of Defold are you using?

iPhone X is running iOS 13.5.1
iPhone 12 Pro Max is running 15.1.1

I tried with both Defold v1.2.190 and v1.2.191-beta

Thanks. And this is with a sample project with no extensions or additions?

Yep. I was trying with the basic mobile template with zero changes.

Hi all! New here, and I just got my first app made with Defold into the App Store [approved]!

I believe I face the same, or similar issue: AVFAudio not found

Apple actually approved my app, and it ran perfectly on my test device, an iPhone 12 on 14.8.1 and the following:

iPad Air 2: OS 14.8 [ok]
iPad Pro (11-inch) (3rd gen): OS 14.8.1 [ok]

However, when downloaded from the App Store, it will instantly crash on the following:

iPad Air 2: OS 13.4.1 (dependent dylib ‘…AVFAudio’ not found)
iPad 6: OS 13.1.3 (dependent dylib ‘…AVFAudio’ not found)
iPhone 6: OS 12.5.5 (Library not loaded: …AVFAudio | Reason: image not found)
iPad Mini 2: OS 12.5.5 (Library not loaded: …AVFAudio | Reason: image not found)

It’s probably significant that the exact same iPad Air 2 model was used and the only difference was the OS. So it’s likely related to what OS is found on the device?

Oh, I just found this:

https://developer.apple.com/documentation/avfaudio

And noted that availability is iOS 14.5+, iPadOS 14.5+, macOS 11.3+ which would explain why the devices on lower versions have issues?

So if Defold uses it, that would mean that I need to set minimumOS accordingly or potentially upset users that are on versions less than iOS 14.5 / macOS 11.3?

Hi,
Unfortunately I don’t have a device with ios version older than 15.0. If you have one of these devices could you please take a look this alpha version of the engine and check if it works on ios < 14.5?

http://d.defold.com/archive/dev/2acdbabe5eea1e6f89c4ed541450552c44464401/dev/editor2/Defold-x86_64-darwin.dmg

Thanks for this quick response! Let me get onto it asap and update on the findings.

BTW, I even have an original iPad (first version) on iOS 5.1.1 but I doubt we’re going that far back. :slight_smile:

If we need to test across old devices and iOS versions, I have 9 and 10 as well. I’ll power them up to see, as I believe the baseline is arm64.

1 Like

I have done a development build and the results as follows:

iPhone 12 (OS 14.8.1) - [ok]
iPad 6 (OS 13.1.3) - [crash] new issue (EXC_BAD_ACCESS (SIGSEGV))
iPhone 6 (OS 12.5.5) - [crash] new issue (EXC_BAD_ACCESS (SIGSEGV))

Seems like the previous AVFAudio is not the issue this time round. Would having the crash log help?

Snippet:
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000000
VM Region Info: 0 is not in any region. Bytes before following region: 4309762048
REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL
UNUSED SPACE AT START
—>
__TEXT 0000000100e1c000-0000000101058000 [ 2288K] r-x/r-x SM=COW …app/KeyFinder

Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [613]
Triggered by Thread: 0

Thread 0 name: engine_main Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 KeyFinder 0x000000010100f468 0x100e1c000 + 2045032
1 KeyFinder 0x0000000101009d1c 0x100e1c000 + 2022684
2 KeyFinder 0x0000000100e25a58 0x100e1c000 + 39512
3 KeyFinder 0x0000000100e27558 0x100e1c000 + 46424
4 KeyFinder 0x0000000101005d8c 0x100e1c000 + 2006412
5 QuartzCore 0x00000001be9d4ff0 0x1be9c3000 + 73712
6 IOKit 0x00000001ba8204b0 0x1ba81b000 + 21680
7 CoreFoundation 0x00000001ba52e990 0x1ba4aa000 + 543120
8 CoreFoundation 0x00000001ba555594 0x1ba4aa000 + 701844
9 CoreFoundation 0x00000001ba554ce0 0x1ba4aa000 + 699616
10 CoreFoundation 0x00000001ba54fb04 0x1ba4aa000 + 678660
11 CoreFoundation 0x00000001ba54efb4 0x1ba4aa000 + 675764
12 GraphicsServices 0x00000001bc75179c 0x1bc747000 + 42908
13 UIKitCore 0x00000001e6f9bc38 0x1e66df000 + 9161784
14 KeyFinder 0x0000000100e28008 0x100e1c000 + 49160
15 KeyFinder 0x0000000100e27fc8 0x100e1c000 + 49096
16 libdyld.dylib 0x00000001ba0128e0 0x1ba011000 + 6368

1 Like

I know this is probably already being looked into, just managed to get this tested on an M1 Mac mini, macOS 11.1 and have a crash log. hope it helps!

Notes: Translocated Process

Crashed Thread: Unknown

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY

Termination Reason: DYLD, [0x1] Library missing

Dyld Error Message:
dyld: Using shared cache: 64510D3B-D7B4-3C73-803C-AD9F01B790AD
dependent dylib ‘/System/Library/Frameworks/AVFAudio.framework/AVFAudio’ not found for ‘/Volumes/VOLUME/*/KeyFinder.app/KeyFinder’, tried but didn’t find: ‘/System/iOSSupport/System/Library/Frameworks/AVFAudio.framework/AVFAudio’ ‘/System/Library/Frameworks/AVFAudio.framework/AVFAudio’

Binary images description not available

Model: Macmini9,1, BootROM 6723.61.3, proc 8:4:4 processors, 8 GB, SMC

Yep, @AGulev is currently investigating this.

3 Likes

Hey,

Could you please take a look this alpha version ?
d.defold.com/archive/dev/41e2a689dbf78063a2f342d8e728d4e2b279972e/dev/editor2/Defold-x86_64-darwin.dmg

2 Likes

Going to get right onto it. Thanks! I am assuming I don’t tweak anything in my plist for now and just do a straight dev build to load on all devices.

1 Like

Great news!

Without changing anything on the project’s source code, I just built and got the following results:

iPhone 12 - 14.8.1 [ok]
iPad air 2 - 14.8 [ok]
ipad air 2 - 13.4.1 [ok]
ipad 6 - 13.1.3 [ok]
iPad mini 2 - 12.5.5 [ok]
M1 Mac Mini - 11.1 [ok]

Feeling like a solid fix! :grinning:

5 Likes