Carthage: Symbol not found for 0.11 on El Capitan

Created on 17 Jan 2016  路  8Comments  路  Source: Carthage/Carthage

Hi, I'm trying to use carthage, first trying to remove all the things, follow https://github.com/Carthage/Carthage/issues/330 and https://github.com/Carthage/Carthage/issues/898

rm -rf /Library/Frameworks/CarthageKit.framework
rm -f /usr/local/bin/carthage
rm /Library/Caches/Homebrew/carthage-0.11.el_capitan.bottle.tar.gz
brew rm carthage

then

brew update
brew install carthage

It downloads completely

==> Downloading https://homebrew.bintray.com/bottles/carthage-0.11.el_capitan.bo
######################################################################## 100.0%
==> Pouring carthage-0.11.el_capitan.bottle.tar.gz
馃嵑  /usr/local/Cellar/carthage/0.11: 29 files, 11.4M

but when carthage update, I get

dyld: Symbol not found: __TMPdCSs18_HeapBufferStorage
  Referenced from: /usr/local/Cellar/carthage/0.11/bin/../Frameworks/CarthageKit.framework/Versions/Current/Frameworks//PrettyColors.framework/PrettyColors
  Expected in: /Library/Frameworks/CarthageKit.framework/Versions/Current/Frameworks/libswiftCore.dylib
 in /usr/local/Cellar/carthage/0.11/bin/../Frameworks/CarthageKit.framework/Versions/Current/Frameworks//PrettyColors.framework/PrettyColors
zsh: trace trap  carthage update

I tried

brew unlink carthage
brew link carthage

but the error is still there

How to fix this, thanks

Most helpful comment

It looks you previously installed Carthage from the .pkg. Remove /Library/Frameworks/CarthageKit.framework and you should be able to use the version from homebrew.

All 8 comments

brew rm carthage and use https://github.com/Carthage/Carthage/releases works for me

Ran into the same thing, looks like carthage doesn't have /usr/local/Frameworks/* in it's runtime search paths, meaning that it doesn't even try too look for CarthageKit in that folder and falls back to the system default aka /usr/local/Frameworks/*.

Additional workaround if you don't want to use the installer package:
Run the following:

sudo cp -r /usr/local/Frameworks/CarthageKit.framework /Library/Frameworks/

Keep in mind that you would need to run this on every update/reinstall, since a bigger chunk of logic lives in CarthageKit than in the binary itself.

Same here with Yosemite and 0.15.1 installed with homebrew

dyld: Symbol not found: __TMPdCSs18_HeapBufferStorage
 Referenced from: /usr/local/Cellar/carthage/0.15.1/bin/../Frameworks/CarthageKit.framework/Versions/Current/Frameworks//PrettyColors.framework/PrettyColors
 Expected in: /Library/Frameworks/CarthageKit.framework/Versions/Current/Frameworks/libswiftCore.dylib
in /usr/local/Cellar/carthage/0.15.1/bin/../Frameworks/CarthageKit.framework/Versions/Current/Frameworks//PrettyColors.framework/PrettyColors

It looks you previously installed Carthage from the .pkg. Remove /Library/Frameworks/CarthageKit.framework and you should be able to use the version from homebrew.

That worked perfectly, thanks @mdiep

Same error, deleted carthage, tried with homebrew or .pkg and no deal. Anything else I can try?

I am on latest ElCapitan update and latest XCode.

@adonaire-sage You might be hitting #1200.

Yes, will comment there, thanks.

Was this page helpful?
0 / 5 - 0 ratings