Thanks.

For other developers who are trying to get MacFUSE 2.x based
applications to work on OS X and Snow Leopard, here is a summary of
what I've learned, FWIW:

#1. Use the .dmg installer, then update to the latest beta (2.1.5)
using the system preferences panel
#2. Run your configure script like this: "PKG_CONFIG_PATH=/usr/local/
lib/pkgconfig ./configure ..."
#3. If stuff doesn't work, edit /usr/local/lib/pkgconfig/fuse.pc and
change "-lfuse" to "-lfuse_ino64", then repeat step #2 and rebuild

-Archie

On Oct 19, 9:21 pm, Amit Singh <[email protected]> wrote:
> Snow Leopard changed how different versions of the stat structure are
> made visible to programs. We discussed this in this group a few times.
>
> You were asking about documentation earlier. Documentation is only
> useful if people read it. At the very least, do read the *first*
> sticky thread in this group.
>
> Amit
>
> On Oct 19, 6:51 pm, Archie Cobbs <[email protected]> wrote:
>
> > The unbotch procedure seemed to work, and I can seemingly mount the
> > filesystem, however, now I get this error:
>
> >     $ file s3b.mnt
> >     s3b.mnt: cannot open `s3b.mnt' (Input/output error)
>
> > (s3b.mnt is the name of the directory where the filesystem is
> > mounted).
>
> > But this problem can be worked-around by relinking the binary with "-
> > lfuse_ino64" instead of "-lfuse".
>
> > Since the "-lfuse" came from pkg-config there must be a bug in the pkg-
> > config file installed by MacFUSE, which is:
>
> >     prefix=/usr/local
> >     exec_prefix=${prefix}
> >     libdir=${exec_prefix}/lib
> >     includedir=${prefix}/include
>
> >     Name: fuse
> >     Description: File System in User Space (MacFUSE)
> >     Version: 2.7.3
> >     Libs: -L${libdir} -lfuse -pthread  -liconv
> >     Cflags: -I${includedir}/fuse -D__FreeBSD__=10 -
> > D_FILE_OFFSET_BITS=64
>
> > Replacing the "-fuse" with "-lfuse_ino64" fixes the problem. This
> > particular Mac is:
>
> >     $ uname -a
> >     Darwin my-imac.local 10.0.0 Darwin Kernel Version 10.0.0: Fri Jul
> > 31 22:47:34 PDT 2009; root:xnu-1456.1.25~1/RELEASE_I386 i386
>
> > Thanks,
> > -Archie
>
> > On Oct 19, 2:34 pm, Archie Cobbs <[email protected]> wrote:
>
> > > Thanks... I will try the unbotch procedure and report back later.
>
> > > -Archie
>
> > > On Oct 19, 2:25 pm, Amit Singh <[email protected]> wrote:
>
> > > > Perhaps you have a botched installation. To make sure you are using an
> > > > unbotched official installation, try the following:
>
> > > > 1) Remove your existing installation
> > > >   1.1) Run "sudo /Library/Filesystems/fusefs.fs/Support/uninstall-
> > > > macfuse-core.sh" (if this script exists, that is)
> > > >   1.2) Read the answer to Q1.2 
> > > > onhttp://code.google.com/p/macfuse/wiki/FAQ.
> > > > The answer tells you where do files get installed by the official
> > > > installation. Double check these locations to make sure that there are
> > > > no remnants.
>
> > > > 2) Download and install the current 
> > > > release:http://code.google.com/p/macfuse/downloads/list
>
> > > > 3) Go to System Preferences and look for the MacFUSE icon. This
> > > > "preference pane" lets you update your MacFUSE installation. You
> > > > probably want to enable "Show Beta Versions" and install the latest
> > > > beta.
>
> > > > Amit
>
> > > > On Oct 19, 12:08 pm, Archie Cobbs <[email protected]> wrote:
>
> > > > > Updating this thread... I've figured out where the pkg-config file is.
> > > > > Now the build works when I do this:
>
> > > > >     $ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure
>
> > > > > Great, that problem is solved (well, worked-around).
>
> > > > > However, now my program dies with these mysterious errors:
>
> > > > >     the MacFUSE file system is not available
> > > > > (-1)
> > > > >     the MacFUSE file system is not available
> > > > > (1)
>
> > > > > The same code runs fine on Linux.
>
> > > > > I did notice this oddity: the kernel extension seems to be missing.
> > > > > "pkgutil --files com.google.macfuse.core" lists the directory
>
> > > > >     /Library/Filesystems/fusefs.fs/Support/fusefs.kext
>
> > > > > but this directory does not exist.
>
> > > > > Unfortunately, I'm not a Mac expert. Thanks for any guidance on how to
> > > > > get MacFUSE to work....
>
> > > > > Thanks,
> > > > > -Archie
>
> > > > > On Oct 19, 1:14 pm, Archie Cobbs <[email protected]> wrote:
>
> > > > > > Hi,
>
> > > > > > I'm the author of a FUSE based filesystem (s3backer) that runs on 
> > > > > > both
> > > > > > Linux and Mac OS X.
>
> > > > > > I'm trying to update the code to support Snow Leopard. Previously, I
> > > > > > was requiring users to use MacPorts for pkg-config and MacFUSE, 
> > > > > > which
> > > > > > worked fine.
>
> > > > > > Now I guess I'm supposed to tell them to install MacFUSE using
> > > > > > the .dmg file instead of MacPorts. OK, that sounds entirely
> > > > > > reasonable, so the world can have One True Install of MacFUSE. And 
> > > > > > in
> > > > > > any case, MacPorts does not have a 2.x version of MacFUSE in it.
>
> > > > > > Here is where it gets fuzzy though. It seems like the new MacFUSE
> > > > > > install doesn't install pkg-config .pc files -- or at least not 
> > > > > > where
> > > > > > a pkg-config installed via MacPorts can find them:
>
> > > > > >     ...
> > > > > >     checking for pkg-config... /opt/local/bin/pkg-config
> > > > > >     checking pkg-config is at least version 0.19... yes
> > > > > >     checking for FUSE... no
> > > > > >     configure: error: "fuse" not found in pkg-config
>
> > > > > > I'm not sure if this is a pkg-config install problem, a MacFUSE
> > > > > > install problem, or is something missing from my configure.ac file, 
> > > > > > or
> > > > > > what.
>
> > > > > > I realized there is stuff on the HOWTO wiki page relating to this. 
> > > > > > But
> > > > > > am I really expected to ask my users to checkout MacFUSE from
> > > > > > Subversion and run shell scripts? Which don't work by the way:
>
> > > > > >     $ svn cohttp://macfuse.googlecode.com/svn/trunk/core
> > > > > >     ...
> > > > > >     $ ./core/macfuse_buildtool.sh -t swconfigure
> > > > > >     ...
> > > > > >     checking for gcc...
> > > > > > gcc
> > > > > >     checking for C compiler default output file
> > > > > > name...
> > > > > >     configure: error: in `/Users/archie/
> > > > > > s3backer-1.3.1':
> > > > > >     configure: error: C compiler cannot create
> > > > > > executables
> > > > > >     See `config.log' for more
> > > > > > details.
>
> > > > > > Summary: it would be really nice if there were a developer-targeted
> > > > > > "best practices" document for how to configure autoconf in 3rd party
> > > > > > filesystems that want to build on both Linux and OS X. I'm sure I'm
> > > > > > not the only developer with questions about how to properly do this.
>
> > > > > > Thanks,
> > > > > > -Archie
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"MacFUSE" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/macfuse?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to