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
-~----------~----~----~----~------~----~------~--~---

Reply via email to