Menu

Not able to build it on Debian x86_64 in both m32 or m64 options

Murali
2016-06-05
2016-06-06
  • Murali

    Murali - 2016-06-05

    I tried building httpfs2 on debian, Please Need help

    1. Initial it complianed that it didnt find fuse_lowlevel.h
      Included the /usr/include/fuse path

    but it still gave me below error
    root@debianhttpfs2:/home/devhttpfs2/httpfs2-0.1.5# make all
    make: pkg-config: Command not found
    /bin/sh: 1: pkg-config: not found
    /bin/sh: 1: pkg-config: not found
    cc -Wall -Wno-unused-function -Wconversion -Wtype-limits -DUSE_AUTH -D_XOPEN_SOURCE=700 -D_ISOC99_SOURCE -g -Os -Wall -I/usr/include/fuse httpfs2.c -o httpfs2
    In file included from /usr/include/fuse/fuse_lowlevel.h:26:0,
    from httpfs2.c:28:
    /usr/include/fuse/fuse_common.h:33:2: error: #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!
    #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!
    ^
    httpfs2.c: In function ‘init_url’:
    httpfs2.c:670:26: warning: argument to ‘sizeof’ in ‘memset’ call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess]
    memset(url, 0, sizeof(url));
    ^
    Makefile:34: recipe for target 'httpfs2' failed
    make: *** [httpfs2] Error 1

    1. Then I made make file change to have D_FILE_OFFSET_BITS=64 -m64

    root@debianhttpfs2:/home/devhttpfs2/httpfs2-0.1.5# make all
    make: pkg-config: Command not found
    /bin/sh: 1: pkg-config: not found
    /bin/sh: 1: pkg-config: not found
    cc -Wall -Wno-unused-function -Wconversion -Wtype-limits -DUSE_AUTH -D_XOPEN_SOURCE=700 -D_ISOC99_SOURCE -g -Os -Wall -I/usr/include/fuse -D_FILE_OFFSET_BITS=64 -m64 httpfs2.c -o httpfs2
    httpfs2.c: In function ‘init_url’:
    httpfs2.c:670:26: warning: argument to ‘sizeof’ in ‘memset’ call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess]
    memset(url, 0, sizeof(url));
    ^
    /tmp/ccXtcjRm.o: In function dirbuf_add': /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:257: undefined reference tofuse_add_direntry'
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:261: undefined reference to fuse_add_direntry' /tmp/ccXtcjRm.o: In functionhttpfs_readdir':
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:285: undefined reference to fuse_reply_err' /tmp/ccXtcjRm.o: In functionreply_buf_limited':
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:276: undefined reference to fuse_reply_buf' /tmp/ccXtcjRm.o: In functionhttpfs_getattr':
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:221: undefined reference to fuse_reply_err' /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:223: undefined reference tofuse_reply_attr'
    /tmp/ccXtcjRm.o: In function httpfs_lookup': /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:239: undefined reference tofuse_reply_err'
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:244: undefined reference to fuse_reply_entry' /tmp/ccXtcjRm.o: In functionhttpfs_open':
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:304: undefined reference to fuse_reply_err' /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:312: undefined reference tofuse_reply_open'
    /tmp/ccXtcjRm.o: In function httpfs_read': /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:352: undefined reference tofuse_reply_err'
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:354: undefined reference to fuse_reply_buf' /tmp/ccXtcjRm.o: In functionmain':
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:943: undefined reference to fuse_parse_cmdline' /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:943: undefined reference tofuse_mount'
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:967: undefined reference to fuse_lowlevel_new' /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:970: undefined reference tofuse_set_signal_handlers'
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:971: undefined reference to fuse_session_add_chan' /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:972: undefined reference tofuse_session_loop'
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:973: undefined reference to fuse_remove_signal_handlers' /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:974: undefined reference tofuse_session_remove_chan'
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:976: undefined reference to fuse_session_destroy' /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:978: undefined reference tofuse_unmount'
    /home/devhttpfs2/httpfs2-0.1.5/httpfs2.c:989: undefined reference to `fuse_opt_free_args'
    collect2: error: ld returned 1 exit status
    Makefile:34: recipe for target 'httpfs2' failed
    make: *** [httpfs2] Error 1

    1. Hence changed the mode to 64, to build 64 bit.

    Then it started giving the below error,

    make: pkg-config: Command not found
    /bin/sh: 1: pkg-config: not found
    /bin/sh: 1: pkg-config: not found
    make clean-recursive clean-recursive-mt
    make[1]: Entering directory '/home/devhttpfs2/httpfs2-0.1.5'
    make[1]: pkg-config: Command not found
    /bin/sh: 1: pkg-config: not found
    /bin/sh: 1: pkg-config: not found
    rm -f httpfs2 httpfs2.1 httpfs2.1.xml
    make CPPFLAGS=' -DUSE_THREAD' LDFLAGS=' -lpthread' binsuffix=-mt clean-recursive
    make[2]: Entering directory '/home/devhttpfs2/httpfs2-0.1.5'
    make[2]: pkg-config: Command not found
    /bin/sh: 1: pkg-config: not found
    /bin/sh: 1: pkg-config: not found
    rm -f httpfs2-mt httpfs2-mt.1 httpfs2-mt.1.xml
    make[2]: Leaving directory '/home/devhttpfs2/httpfs2-0.1.5'
    make[1]: Leaving directory '/home/devhttpfs2/httpfs2-0.1.5'
    root@debianhttpfs2:/home/devhttpfs2/httpfs2-0.1.5# pwd
    /home/devhttpfs2/httpfs2-0.1.5
    root@debianhttpfs2:/home/devhttpfs2/httpfs2-0.1.5# s
    bash: s: command not found
    root@debianhttpfs2:/home/devhttpfs2/httpfs2-0.1.5# vi Makefile
    root@debianhttpfs2:/home/devhttpfs2/httpfs2-0.1.5# make all
    make: pkg-config: Command not found
    /bin/sh: 1: pkg-config: not found
    /bin/sh: 1: pkg-config: not found
    cc -Wall -Wno-unused-function -Wconversion -Wtype-limits -DUSE_AUTH -D_XOPEN_SOURCE=700 -D_ISOC99_SOURCE -g -Os -Wall -I/usr/include/fuse -D_FILE_OFFSET_BITS=32 -m32 httpfs2.c -o httpfs2
    In file included from /usr/include/stdint.h:25:0,
    from /usr/lib/gcc/x86_64-linux-gnu/4.9/include/stdint.h:9,
    from /usr/include/fuse/fuse_common.h:19,
    from /usr/include/fuse/fuse_lowlevel.h:26,
    from httpfs2.c:28:
    /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory
    # include <sys cdefs.h="">
    ^
    compilation terminated.
    Makefile:34: recipe for target 'httpfs2' failed
    make: *** [httpfs2] Error 1</sys>

    Need your immediate help

    Thanks
    Murphy

     

    Last edit: Murali 2016-06-05
  • Murali

    Murali - 2016-06-06

    Finally got it working. But I'm not able to run httpfs2-ssl on centos. It asks for the gnutls library specific to debian.

    Is there a way we can make it work.

     
    • Michal Suchanek

      Michal Suchanek - 2016-06-06

      Hello,

      I was testing this on OS X when I was still using it so this is
      definitely not Debian specific.

      Also note the missing pkg-config in the build message above.

       

Log in to post a comment.

MongoDB Logo MongoDB