In my ios app, I'm trying to distinguish environments, to make web api calls to the proper environment (Development
, Staging
and Production
).
For that I have created a configuration.plist
file with the different endpoints for each environment and:
Debug
Configuration and called it Development Build
.Development
(duplicated the Debug
scheme)
and in the Info tab (Run
section) chose the Development Build
configuration.When I run in Debug mode, everything runs normally.
I'm using cocoa pods.
If I select Development
scheme, I get a No such module 'JazzHands'
If I edit the Development
scheme to use the Debug
build, it works fine.
So I must be missing some thing for this not to work.
If the configuration naming don't match exactly (case-sensitive), Xcode will abort the archive process and show the error "No such module ..." That is, if you have a "parent" project with a configuration named "AppStore" you must make sure that all subprojects also have this configuration name. See my attached screenshots.
If you are not getting your framework from a trusted source you should inspect the framework and ensure that it contains a Modules folder with a module.modulemap file inside it. If module.modulemap is not present, you will get the "No such module 'MyFramework'" error.
When using Apple Configurator to create the configuration profile, be sure the settings you export are compatible with the iOS/iPadOS version on the devices. For information on resolving incompatible settings, search for Configuration Profile Reference and Mobile Device Management Protocol Reference on the Apple Developer website.
When using iOS/iPadOS devices, there are two ways to get custom settings into Intune: You can use these tools to export settings to a configuration profile. In Intune, you import this file, and then assign the profile to your iOS/iPadOS users and devices.
Create the same custom build configuration in JazzHands
No such module
is thrown because it can't locate the JazzHands
for your custom build configurationDerivedData
.Build
folder which would contain a folder corresponding to each build configuration for your project.Development
folder would not contain the framework JazzHands
binaryDebug
folder would contain the framework JazzHands
binaryGiven below is an example:
~/Library/Developer/Xcode/DerivedData/SomeApp-skjahjkdhsakjhdaskjdhaskjlhs/Build/Development-iphonesimulator
For those running into this question, try pod install
this will generate some .xcconfig files with your configuration name. Clean your build folder and build again.
This worked for me with Cocoapods 1.0
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