Skip to content

Instantly share code, notes, and snippets.

@aaronzirbes
Created August 2, 2012 17:43
Show Gist options
  • Save aaronzirbes/3239033 to your computer and use it in GitHub Desktop.
Save aaronzirbes/3239033 to your computer and use it in GitHub Desktop.
brew doctor and libmacfuse/libosxfuse
If you see...
Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected dylibs:
/usr/local/lib/libmacfuse_i32.2.dylib /usr/local/lib/libmacfuse_i64.2.dylib /usr/local/lib/libosxfuse_i32.2.dylib /usr/local/lib/libosxfuse_i64.2.dylib
Warning: Unbrewed .la files were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected .la files:
/usr/local/lib/libosxfuse_i32.la /usr/local/lib/libosxfuse_i64.la
Warning: Unbrewed .pc files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected .pc files:
/usr/local/lib/pkgconfig/osxfuse.pc
The fix is:
cd /usr/local
tar -cvzf macfuse-backup.tar.gz \
lib/libmacfuse_i32.2.dylib \
lib/libmacfuse_i64.2.dylib \
lib/libosxfuse_i32.2.dylib \
lib/libosxfuse_i64.2.dylib \
lib/libosxfuse_i32.la \
lib/libosxfuse_i64.la \
lib/pkgconfig/osxfuse.pc \
rm -f lib/libmacfuse_i32.2.dylib \
lib/libmacfuse_i64.2.dylib \
lib/libosxfuse_i32.2.dylib \
lib/libosxfuse_i64.2.dylib \
lib/libosxfuse_i32.la \
lib/libosxfuse_i64.la \
lib/pkgconfig/osxfuse.pc
brew prune
brew install fuse4x
Copy link

ghost commented Aug 3, 2012

Does ist make much sense, to remove the backup you created the step before?

I would rather consider

rm -f lib/libmacfuse_i32.2.dylib
lib/libmacfuse_i64.2.dylib
lib/libosxfuse_i32.2.dylib
lib/libosxfuse_i64.2.dylib
lib/libosxfuse_i32.la
lib/libosxfuse_i64.la
lib/pkgconfig/osxfuse.pc

Watch out for not to crash TrueCrypt by removing these libs.
Rest works fine.

@aaronzirbes
Copy link
Author

You're right. I updated the gist. Thanks!

@yumitsu
Copy link

yumitsu commented Feb 22, 2013

That's wrong. fuse4x is obsolete and should not be used.

@willmoore
Copy link

Any suggestions on what should be used instead of fuse4x? A comment like that could be more helpful if it explained an alternative or why it's now considered obsolete ...

@jm3
Copy link

jm3 commented Mar 19, 2013

Ya, to echo @yumitsu + @Snnd, this strategy will completely hose TrueCrypt. It's been a reported issue since February of 2012: #10183 #14430 #15399, but I think no one's sure how to fix it downstream from TrueCrypt (who doesn't seem to care).

@willmoore
Copy link

Thanks @jm3. I didn't realize that @yumitsu and @Snnd where ultimately referencing the same problem(s). From my reading of the comments before, @yumitsu's suggestion doesn't eliminate fuse4x and still causes problems with TrueCrypt. Forgive my lack of understanding here, this is all new to me. I guess my ultimate question is really is there a newer or more appropriate thing to use in fuse4x's place if it's considered obsolete?

@trinitronx
Copy link

This script fixed the brew doctor warnings for me, and Truecrypt still seems to work.

@Sanabria
Copy link

Trinitronx script worked for me too. No more warnings from Brew Doctor and Truecrypt continues to work.

@adam-singer
Copy link

@trinitronx worked great for me!

@nagae
Copy link

nagae commented Sep 4, 2013

@trinitronx worked properly in my case, too. Thanks!

@danielhtshih
Copy link

It works for me too! Thanks!

@yuriysergeev
Copy link

Thx! work solution

@rickw
Copy link

rickw commented Jan 1, 2014

I have the same problem with Bitcasa I guess they use the same fuse as TrueCrypt

@dogweather
Copy link

What is the actually problem here? Why does the solution work?

@SteveBenner
Copy link

Here is a solution I created from a bash script made to solve the same issue: https://gist.github.com/SteveBenner/10938596.

It uses Ruby module FileUtils, but falls back to shell commands if you can't include the module for some reason. It also prevents you from running the script if you don't need to. Works like a charm for me.

@maxshellmax
Copy link

thanks a lot stevebenner that solved it really easily for me.

@otzoran
Copy link

otzoran commented Feb 26, 2015

This little snippet demonstrates nicely the idea, but it lacks important verifications, symlinks aren't copied over and the pkgconfig files aren't moved to the right subdir.
Fixed, tested on Yosemite the gist is here.
Thanx to Aaron, James and Yiufung . enjoy...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment