Combining Fuse and Wine - What's the best way?
Richard Stitz
richardstitz at gmail.com
Wed Dec 24 16:54:57 CST 2008
I tried but I've hit a problem. I'm just trying to compile the "Hello
world" Fuse application.
(http://fuse.sourceforge.net/helloworld.html) In regular gcc, I can
compile and run it fine:
$ gcc -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=22 -lfuse -o main main.c
$ mkdir test
$ ./main test
$ cat test/hello
Hello World!
$ sudo umount test
$ rm -r test
All goes well. However, if I try to compile this app with winegcc, it
fails to run properly:
$ winegcc -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=22 -lfuse -o main main.c
$ mkdir test
$ ./main test
fusermount: failed to open /etc/fuse.conf: Permission denied
fusermount: waitpid: No child processes
$ sudo umount test
(I still had to umount the directory even though the mount failed, as
mtab recorded that both /dev/fuse and main.exe.so were mounted to the
directory, despite the failed mount. Using umount cleaned the entried
from mtab.) I also tried to do so as root (given the whole permission
denied thing):
$ sudo su
# ./main test
fuse: waitpid: No child processes
# umount test
# rm -r test
If I compile the app again using the first method, it goes flawlessly
again. What do I need to do to get it working with winegcc?
On Wed, Dec 24, 2008 at 6:52 AM, Stefan Dösinger <stefan at codeweavers.com> wrote:
>
> You have to use winegcc(see 'winemaker' for starting points). That way your
> app is compiled to a .exe.so file that can be run with 'wine foo.exe.so' or
> with a helper script. This application is a native Linux app, and it can
> link to Linux libraries like Fuse, and at the same time use Win32 API calls
> from Wine and e.g. open a DLL with LoadLibrary.
More information about the wine-devel
mailing list