2010-02-19 82 views
0

我得到这个错误:如何使用Fuse文件系统进行转换?

Error: invalid conversion from int (*)(const char*, fuse_file_info*) to int (*)(const char*, int)

当我这样做

static struct fuse_operations vkfs_opers; 

... 

vkfs_opers.open = vkfs_open; 

但功能declarated为

static int vkfs_open (const char *path, struct fuse_file_info *fi) 

,结构fuse_operations它declarated作为

int (*open) (const char *, struct fuse_file_info *); 

回答

1

在包括<fuse.h>之前,尝试#define FUSE_USE_VERSION 26。

解决方案的来源是this discussion

+0

,谢谢,我解决了问题... – Antigluk 2010-02-19 20:35:07

0

你所做的事似乎是正确的,所以我不知道你为什么得到这个错误。我的第一个猜测是它会产生一些其他错误的副作用。这是你编译时得到的唯一错误,还是其他的错误?

0

如果你有一个Makefile文件添加到您的CFLAGS适当的定义-DFUSE_USE_VERSION = 26 所以你要这样一行:CFLAGS + = -DFUSE_USE_VERSION = 26个

相关问题