Thanks a lot for your support Tomas and Erik! The first 2 proposed solutions do fix the problem. Defining __DARWIN_64_BIT_INO_T=0 before including fuse.h, and linking against -lfuse, does not seem to work.
Best regards, Frank On Sep 12, 2:41 pm, Erik Larsson <[email protected]> wrote: > Erik Larsson wrote 2009-09-12 14.36: > > > > > > > Tomas Carnecky wrote 2009-09-12 14.31: > > >> On Sep 8, 2009, at 11:32 AM, f...@nk wrote: > > >>> Hello, > > >>> After upgrading to Snow Leopard and MacFUSE 2.1.5 (Beta), I have an > >>> issue that I didn't have before the upgrade. Each access to any > >>> mounted fuse filesystem (even the example filesystems provided with > >>> the fuse library), will result in an I/O error. > > >>> For instance, the hello filesystem: > > >>> % ./hello -d mount > >>> unique: 0, opcode: INIT (26), nodeid: 0, insize: 56 > >>> INIT: 7.8 > >>> flags=0x00000000 > >>> max_readahead=0x00100000 > >>> INIT: 7.8 > >>> flags=0x00000000 > >>> max_readahead=0x00100000 > >>> max_write=0x00400000 > >>> unique: 0, error: 0 (Unknown error: 0), outsize: 40 > >>> unique: 0, opcode: STATFS (17), nodeid: 1, insize: 40 > >>> unique: 0, error: 0 (Unknown error: 0), outsize: 96 > >>> ACCESS / 00 > >>> unique: 1, error: -78 (Function not implemented), outsize: 16 > >>> unique: 2, opcode: GETATTR (3), nodeid: 1, insize: 40 > >>> unique: 2, error: 0 (Unknown error: 0), outsize: 128 > > >>> % ls mount > >>> ls: mount: Input/output error > > >> This was exactly the reason why I started looking into how to compile > >> MacFUSE. I almost forgot what I did to fix it :) > > >> When I compiled the examples myself (gcc -lfuse -o hello hello.c) it > >> didn't work, but when I compiled the examples using ./ > >> macfuse_buildtool.sh they worked! So I started looking what > >> commandline the shell script uses and found out that I had to add '- > >> mmacosx-version-min=10.5' to make it work. Don't ask my why that is, I > >> don't even know what -mmacosx-version-min does, but I hope it helps you. > > > I think I know this problem. > > You simply need to compile the example file systems with -lfuse_ino64 > > instead of -lfuse, since 64-bit inodes is now (as of Snow Leopard) the > > default in header files such as stat.h. (I.e. what was called struct > > stat64 in Leopard is now the same as struct stat...) > > > - Erik > > (Or you could pass -D__DARWIN_64_BIT_INO_T=0 to disable 64-bit inode > numbers in the headers. Then you can continue linking with -lfuse.) > > - Erik --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
