McMartin/FRUT

Bad iOS Defaults for Bundle and Bitcode

mhetrick opened this issue · 1 comments

A FRUT-generated iOS project fails compilation due to conflicting flags:

ld: -bundle and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Bitcode should be enabled by default. It looks like FRUT is adding the following linker arguments:

-bundle -Wl,-headerpad_max_install_names "/Users/tricky/Code/uamaster/projects/lowsat/iosbuild/Debug${EFFECTIVE_PLATFORM_NAME}/libUnfiltered Audio Bass Mint.a" -framework AVFoundation -framework Accelerate -framework AudioToolbox -framework CoreAudio -framework CoreAudioKit -framework CoreGraphics -framework CoreImage -framework CoreMIDI -framework CoreText -framework Foundation -framework MobileCoreServices -framework OpenGLES -framework QuartzCore -framework UIKit

I'm also experiencing issues with codesigning for uploading the file to the device, which I'm not experiencing with a freshly generated JUCE 6 project. I'm looking into what could cause this.

@mhetrick sorry for the late reply, I was on vacation.

A FRUT-generated iOS project

Please provide more details about that project:

  • which type of project, GUI Application or Audio Plug-in? If it's an Audio Plug-in, which formats are enabled?
  • which version of JUCE? (ideally a specific commit, or a full version)
  • which version of CMake?
  • which version of iOS is targeted?

Bitcode should be enabled by default.

I don't see anything in Projucer that enables bitcode by default. Why do you think it should be enabled by default?

I'm also experiencing issues with codesigning for uploading the file to the device

I don't have an iOS device, so I won't be able to investigate this. However, please create a new GitHub issue if it is not related to bitcode.