我正在开发一个用于学习目的的非常简单的文件系统,它使用了 fuse 。但是,我无法编译它:
$ gcc -Wall `pkg-config fuse --cflags --libs` myfs.c -o myfs
/tmp/cc6xhGKO.o: In function `main':
myfs.c:(.text+0x1602): undefined reference to `fuse_opt_add_arg'
myfs.c:(.text+0x164f): undefined reference to `fuse_main_real'
collect2: ld returned 1 exit status
pkg-config
已经附加了 -lfuse
(见下文)。我的系统信息:
$ uname -a
Linux fpti 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
$ dpkg -l | grep fuse
ii fuse 2.8.6-2ubuntu2 Filesystem in Userspace
ii libfuse-dev 2.8.6-2ubuntu2 Filesystem in Userspace (development)
ii libfuse2 2.8.6-2ubuntu2 Filesystem in Userspace (library)
$ pkg-config fuse --cflags --libs
-D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -pthread -lfuse -lrt -ldl
最佳答案
-l
选项需要在需要它们的东西之后。 --libs
输出不起作用,因为它位于错误的位置。在 myfs.c
之后移动它
关于c - 编译时找不到熔断器功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22288456/