[Ilugc] Re: Ubuntu 8.04+FUSE filesystem

  • From: vijaykumar@xxxxxxxxxxxx (Vijay Kumar)
  • Date: Wed Sep 10 17:33:02 2008

Zico wrote:

On Tue, Sep 9, 2008 at 3:52 PM, Vijay Kumar <vijaykumar@xxxxxxxxxxxx> wrote:

Seems like the -lrt and -ldl flags are missing. Try this

$ gcc  -I/usr/include -DFUSEINST="\"/usr\"" -D_FILE_OFFSET_BITS=64
-DFUSE_USE_VERSION=22  -L/lib -o siefs  siefs.o obex.o transport.o comm.o
crcmodel.o charset.o /usr/lib/libfuse.a -lpthread -lrt -ldl


This is what i got after applying the above command:

*root@laptop:/opt/siefs-0.5# gcc -l /usr/include -DFUSEINST="\"/usr\""
-D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=22 -L/lib -o siefs siefs.o obex.o
transport.o comm.o crcmodel.o charset.o /usr/lib/libfuse.a -lpthread -lrt
-ldl
gcc: siefs.o: No such file or directory
gcc: obex.o: No such file or directory
gcc: transport.o: No such file or directory
gcc: comm.o: No such file or directory
gcc: crcmodel.o: No such file or directory
gcc: charset.o: No such file or directory*

You will have to execute the gcc command within the siefs sub-directory, 
which contains the .o files. That is do cd /opt/siefs-0.5/siefs and then 
run the gcc command.

BTW, this is just a hack. The right way to do it would be to modify 
siefs/Makefile.am and change

LDADD = $(fuseinst)/lib/libfuse.a -lpthread

to

LDADD = $(fuseinst)/lib/libfuse.a -lpthread -lrt -ldl

And then rerun automake and autoconf. This is not for the faint at heart. 
You have been warned.

Regards,
Vijay

Other related posts: