Carthage is no longer needed to build any version of Loop or FreeAPS.
This page is left here for any one who may be using older code that does require carthage.
Best practice: Use updated code with a fresh download.
If you are using updated code and see what you think is a carthage error, you probably did not select Loop (Workspace) as the scheme for building Loop in Xcode. Check your build steps, review graphics and try again.
Loop Build Alert : Jan 14, 2021
Status update: Jan 20, 2021: The zip build version of Loop master and Loop AB was updated to avoid the carthage version problem – be sure to download a fresh copy of the zip from Loopdocs.
Status update: Jan 21, 2021: The Workspace build version for master and AB was updated, but not FreeAPS. Be sure to clone (or update your existing copy). Easiest way is to use the Build Select script.
Status update: March 24, 2021: The Workspace build version for FreeAPS was updated. Be sure to clone (or update your existing copy). Easiest way is to use the Build Select script.
Carthage Version Problem
The error looks similar to:
Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo: one of -create, -thin <arch_type>, -extract <arch_type>, -remove <arch_type>, -replace <arch_type> <file_name>, -verify_arch <arch_type> … , -archs, -info, or -detailed_info must be specified
- If you have newly downloaded code but carthage 0.36.1 or newer is installed on your mac, you need to follow the directions on this page to remove carthage; but you won’t need to manually install carthage 0.36.0. In fact, you no longer need to have homebrew or carthage installed.
- If you have old code that you are trying to reuse or if you’re using a fork that has not been updated, you may need to manually install carthage 0.36.0.
Open Terminal. If Terminal says “bash” at the top and has an error message about updating your account, execute the command that is between the ‘ marks, reboot your computer, then come back and start again. None of the scripts or commands on LoopandLearn are expected to work properly in the “bash” shell, you need to upgrade to the “zsh” shell. This upgrade should have happened automatically during your Catalina upgrade, but for some people it did not. The command may be slightly different depending on your computer configuration, so use the exact command that is between the quotes on your screen. Then reboot.
First, make sure that you have the problematic version of carthage. In the Terminal type.
carthage version
If it comes back with 0.36.1 or a bigger number, you have the problematic version.
If it comes back with 0.36.0, this is not your problem. Stop now – you should not use these instructions. Review the Build Help page.
If it comes back with “command not found: carthage”, then you didn’t install brew or carthage
- Many version of Loop no longer require carthage
- If you know your fork of Loop does require carthage, then skip ahead to the install carthage manually step
To uninstall carthage, copy and paste the following commands into Terminal.
brew uninstall --force carthage
Make sure there are two hyphens before the force.
If the uninstall command fails, use the two commands that are on the bottom of this page.
Install carthage manually
WAIT – make sure you really need carthage
There may be forks of Loop that are not up-to-date regarding carthage. If you know you are using one that requires carthage, then keep going. But first, try to build without carthage to make sure you really need it. If you’re building any version where you can use the Build Select script, you don’t need to do this section.
Download the “Carthage.pkg” file from this link: https://github.com/Carthage/Carthage/releases/tag/0.36.0
The package is not signed, so you have to open it (should be in your downloads directory) with a control click instead of a normal double click. Then pick Open from the menu and Open (greyed out) again from the pop up box. Then run through the install process. You will need to enter your password.
If you got this box, you did not do Control Click
The box should look like this, and you have to pick the grey Open button, not the blue Cancel one.
Uninstall carthage
If you manually installed carthage 0.36.0, then it must be manually uninstalled.
When you are ready to remove this manually installed copy of carthage 0.36.0, copy and paste these commands into the Terminal (do each line one at a time).
rm -rf /usr/local/bin/carthage
sudo rm -rf /Library/Frameworks/CarthageKit.framework
You will be prompted for a password when you hit enter on the second command. It is the same password you use in order to log into the computer. It will not echo to the screen.
To be alerted about issues like this, subscribe to the Newsletter using the link on the very bottom of this page..
For help with these instructions, post a message in the Loop and Learn forum: