Use CosmicMind material stable version with Swift 3 using carthage - ios

I'am making an app with material design and this package looked really nice for that purpose. I have simply set up my Cartfile like this:
github "CosmicMind/Material" ~> 1.42.9
and then run:
carthage update
which gives me the following error:
*** Building scheme "Material iOS" in Material.xcworkspace
** CLEAN FAILED **
The following build commands failed:
Check dependencies
(1 failure)
** BUILD FAILED **
The following build commands failed:
Check dependencies
(1 failure)
A shell task (/usr/bin/xcrun xcodebuild -workspace /Users/alex/TelenorApp/MyTelenor/Carthage/Checkouts/Material/Examples/Material.xcworkspace -scheme Material iOS -configuration Release -sdk iphoneos ONLY_ACTIVE_ARCH=NO BITCODE_GENERATION_MODE=bitcode CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES clean build) failed with exit code 65:
** CLEAN FAILED **
The following build commands failed:
Check dependencies
(1 failure)
** BUILD FAILED **
The following build commands failed:
Check dependencies
(1 failure)
I have set up the command line tools to use XCode 8, it is possible to build using Xcode 7.3 tools (xcode-select) but it wont link with my app that is using Swift 3 if I do that.
What is the reccomended way to use Material with Swift 3? Is it possible to make Material work with Swift 3 some other way? I would prefer to use a stable version of Material if that is possible.
Thankful for answers!

The master branch supports Swift 3. So all should work in that regard :)

Related

carthage build not works with Xcode 12.0, It works fine with Xcode 11.3. Task failed with exit code 1:

apple#Apples-iMac ConfigData % carthage build --no-skip-current
Please update to the latest Carthage version: 0.36.0. You currently are on 0.35.0
*** xcodebuild output can be found in /var/folders/y2/9rgqlp3n51nd73tg8_7gf7nr0000gn/T/carthage-xcodebuild.hHyZ7t.log
*** Building scheme "ConfigData" in ConfigData.xcodeproj
Build Failed
Task failed with exit code 1:
/usr/bin/xcrun lipo -create /Users/apple/Library/Developer/Xcode/DerivedData/ConfigData-bypjmncfuigbwmaixccfdcxuhgpp/Build/Intermediates.noindex/ArchiveIntermediates/ConfigData/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/ConfigData.framework/ConfigData /Users/apple/Library/Developer/Xcode/DerivedData/ConfigData-bypjmncfuigbwmaixccfdcxuhgpp/Build/Products/Release-iphonesimulator/ConfigData.framework/ConfigData -output /Users/apple/Desktop/XCode_12/ConfigData/Carthage/Build/iOS/ConfigData.framework/ConfigData
This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/y2/9rgqlp3n51nd73tg8_7gf7nr0000gn/T/carthage-xcodebuild.hHyZ7t.log
Carthage is working on these issues. In the meantime try this workaround.
https://gist.github.com/skymobilebuilds/61f4a95bd62a3db36b52719aeab7e0d5
This has worked for me.

Errors in creating XCFramework using Cocoapods

I am trying to generate a iOS XCFramework from an Xcode framework Project(Project name XCFramework). Project consists of some of the cocoa-pods libraries like Socket IO, SwiftKeyChainWrapper etc. If I generate XCFramework without cocoa-pods, xcodebuild commands are generating the XCFramework successfully for both iOS and iOS Simulator destinations, but when I install pods in the framework project I am getting many errors. It will be really helpful if any one has come across this scenario and succeeded kindly help in generating XCFramework sample project using cocoa-pods.
Note: a) I used a small package called xcframework which generates xcfremwork in command (1)
b) If I archive the project directly from Xcode the archive gets successful.
1) Buid command:- xcframework build --project XCFramework.xcodeproj --name XCFramework --iOS EcallXCFramework
......
......
** ARCHIVE FAILED **
The following build commands failed:
Ld /Users/*******/Library/Developer/Xcode/DerivedData/XCFramework-gccrcnyzlsezmugkrqqlnpusjfci/Build/Intermediates.noindex/ArchiveIntermediates/XCFramework/InstallationBuildProductsLocation/Library/Frameworks/XCFramework.framework/XCFramework normal arm64
(1 failure)
2) Build Command:- xcodebuild archive -scheme XCFramework -destination="generic/platform=iOS" -destination="generic/platform=iOS Simulator" SKIP_INSTALL=NO
......
.......
User defaults from command line:
destination = generic/platform=iOS Simulator
Build settings from command line:
SKIP_INSTALL = NO
xcodebuild: error: Failed to build project EcallXCFramework with scheme XCFramework.
Reason: The run destination My Mac is not valid for Archiving the scheme 'XCFramework'.
3) Build Command:- xcodebuild archive
.....
.....
ld: framework not found SwiftKeychainWrapper
clang: error: linker command failed with exit code 1 (use -v to see invocation)
** ARCHIVE FAILED **
The following build commands failed:
Ld /tmp/EcallXCFramework.dst/Library/Frameworks/EcallXCFramework.framework/EcallXCFramework normal arm64
(1 failure)

Carthage prevents Xcode 9.2 from building

I have been experimenting on a project with using Carthage.
Having installed Carthage I then attempted to add Nimble and Quick to the project through Carthage.
However, I get the following on carthage update:
user$ carthage update
*** Fetching Quick
*** Fetching Nimble
*** Checking out Nimble at "v5.1.1"
*** Checking out Quick at "v1.2.0"
*** xcodebuild output can be found in /var/folders/g_/h57q7zyj569cgs2rryp8cmk40000gp/T/carthage-xcodebuild.YUIvqk.log
*** Building scheme "Nimble-iOS" in Nimble.xcodeproj
Build Failed
Task failed with exit code 65:
/usr/bin/xcrun xcodebuild -project /Users/user/nbrownapp/Carthage/Checkouts/Nimble/Nimble.xcodeproj -scheme Nimble-iOS -configuration Release -derivedDataPath /Users/user/Library/Caches/org.carthage.CarthageKit/DerivedData/9.2_9C40b/Nimble/v5.1.1 -sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive -archivePath /var/folders/g_/h57q7zyj569cgs2rryp8cmk40000gp/T/Nimble SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO (launched in /Users/user/nbrownapp/Carthage/Checkouts/Nimble)
This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/g_/h57q7zyj569cgs2rryp8cmk40000gp/T/carthage-xcodebuild.YUIvqk.log
The project itself fails to build with numerous Shell Script Invocation Errors. Uninstalling Carthage, removing the Cartfile, Cartfile.resolved and the Carthage folder from the project and deleting the script leads to the project building without any errors. However, I would like to use Carthage and can't see why I can't get it to build the dependencies? Or why the project won't build when Carthage is installed?
If I remove the above and try again I get the same error.
I've been following the Ray Wenderlich example:
https://www.raywenderlich.com/165660/carthage-tutorial-getting-started-2
Any help would be appreciated.

UberRides Carthage Issue

I want to use UberRides SDK in Objective-C Project. I checked pod for objective c but it is not available. So i tried Carthage.
Here is my Cartfile:
# UberRides
github "https://github.com/uber/rides-ios-sdk" ~> 0.5
I use carthage update --platform iOS this command to installation and i am using xCode 8. But after some installation i am getting some error and i don't know how to handle so please help me.
Here is log of terminal:
*** Fetching rides-ios-sdk
*** Fetching ObjectMapper
*** Checking out ObjectMapper at "1.5.0"
*** Downloading rides-ios-sdk.framework binary at "v0.5.2"
*** Checking out rides-ios-sdk at "v0.5.2"
*** xcodebuild output can be found in /var/folders/mt/_rpb6s913b54yl1gfk0dt2qh0000gn/T/carthage-xcodebuild.orgg88.log
*** Building scheme "ObjectMapper-iOS" in ObjectMapper.xcworkspace
*** Building scheme "UberRides" in UberRides.xcodeproj
** CLEAN FAILED **
The following build commands failed:
Check dependencies
(1 failure)
** BUILD FAILED **
The following build commands failed:
Check dependencies
(1 failure)
A shell task (/usr/bin/xcrun xcodebuild -project /Users/jayesh/Desktop/CarthageDemo/Carthage/Checkouts/rides-ios-sdk/source/UberRides.xcodeproj -scheme UberRides -configuration Release -sdk iphoneos ONLY_ACTIVE_ARCH=NO BITCODE_GENERATION_MODE=bitcode CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES clean build) failed with exit code 65:
** CLEAN FAILED **
The following build commands failed:
Check dependencies
(1 failure)
** BUILD FAILED **
The following build commands failed:
Check dependencies
(1 failure)
This is probably because the latest 0.5 release is still using Swift 2.2
try updating your Cartfile to use the experimental Swift 2.3 branch
# UberRides
github "https://github.com/uber/rides-ios-sdk" "swift-2.3-dev"

Running Frank on Device

I am stuck on getting a Frankified.app running on a device. When I do step 1 on the online tutorial:
xcodebuild -target Frank-Fruitstrap -xcconfig ./Frank/frankify.xcconfig -arch arm7 -configuration Debug -sdk iphoneos DEPLOYMENT_LOCATION=YES DSTROOT="~/Documents/Workspace/Frank-Fruitstrap/Frank/frankified_build/" FRANK_LIBRARY_SEARCH_PATHS="~/Documents/Workspace/Frank-Fruitstrap/Frank" clean build CODE_SIGN_IDENTITY='iPhone Developer: '
and I get this:
** CLEAN SUCCEEDED **
=== BUILD NATIVE TARGET Frank-Fruitstrap OF PROJECT Frank-Fruitstrap WITH CONFIGURATION Debug ===
Check dependencies
No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=arm7, VALID_ARCHS=armv7 armv7s).
** BUILD FAILED **
The following build commands failed:
Check dependencies
(1 failure)
The codesign works for other apps when I run them from command line, just not a Frankified app.
Am I the only one who has problems with this?
I got help from Pete Hodgeson on this. Here is the post on this google group
This is what Pete Suggested for me:
This is a fairly common project setting issue I think. You should be able to resolve it by modifying the build settings for your Frank-Fruitstrap target. Either change "Build Active Architecture Only" to "No", or add "arm7" to the "Valid Architectures" list.
I did the latter and it worked.

Resources