• I can't build tcl-fuse

    From Luc@21:1/5 to All on Sat Apr 15 23:48:19 2023
    Can somebody please advise?

    make
    gcc -DPACKAGE_NAME=\"fuse\" -DPACKAGE_TARNAME=\"fuse\" -DPACKAGE_VERSION=\"1.1\" -DPACKAGE_STRING=\"fuse\ 1.1\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -
    DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DTCL_THREADS=1 -DMODULE_SCOPE=extern\ __attribute__\(\(__visibility__\(\"hidden\"\)\)\)
    -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DUSE_TCL_STUBS=1 -I"/usr/include/tcl8.6" -pipe -O2 -fomit-frame-pointer -Wall -Wno-implicit-int -fPIC -c `echo ./unix/tclfuse.c` -o tclfuse.o
    ./unix/tclfuse.c:44:18: fatal error: fuse.h: No such file or directory
    #include <fuse.h>
    ^
    compilation terminated.
    Makefile:286: recipe for target 'tclfuse.o' failed
    make: *** [tclfuse.o] Error 1


    --
    Luc


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Ted Nolan @21:1/5 to [email protected] on Sun Apr 16 03:45:34 2023
    In article <[email protected]>, Luc <[email protected]d> wrote: >Can somebody please advise?

    make
    gcc -DPACKAGE_NAME=\"fuse\" -DPACKAGE_TARNAME=\"fuse\" >-DPACKAGE_VERSION=\"1.1\" -DPACKAGE_STRING=\"fuse\ 1.1\" >-DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 >-DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
    -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
    -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1
    -DHAVE_SYS_PARAM_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1
    -D_THREAD_SAFE=1 -DTCL_THREADS=1 -DMODULE_SCOPE=extern\ >__attribute__\(\(__visibility__\(\"hidden\"\)\)\)
    -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DUSE_TCL_STUBS=1 >-I"/usr/include/tcl8.6" -pipe -O2 -fomit-frame-pointer -Wall >-Wno-implicit-int -fPIC -c `echo ./unix/tclfuse.c` -o tclfuse.o >./unix/tclfuse.c:44:18: fatal error: fuse.h: No such file or directory
    #include <fuse.h>
    ^
    compilation terminated.
    Makefile:286: recipe for target 'tclfuse.o' failed
    make: *** [tclfuse.o] Error 1


    --
    Luc



    It's been a while since I built it, and I can't get to that system
    right now, but I'm guessing you need to install something like
    "libfuse" & "libfuse-dev" on your system before you can compile tcl-fuse.
    --
    columbiaclosings.com
    What's not in Columbia anymore..

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Rich@21:1/5 to Luc on Sun Apr 16 03:41:04 2023
    Luc <[email protected]d> wrote:
    Can somebody please advise?

    make gcc -DPACKAGE_NAME=\"fuse\" -DPACKAGE_TARNAME=\"fuse\"
    -DPACKAGE_VERSION=\"1.1\" -DPACKAGE_STRING=\"fuse\ 1.1\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
    -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
    -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1
    -DHAVE_SYS_PARAM_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1
    -D_THREAD_SAFE=1 -DTCL_THREADS=1 -DMODULE_SCOPE=extern\ __attribute__\(\(__visibility__\(\"hidden\"\)\)\)
    -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DUSE_TCL_STUBS=1 -I"/usr/include/tcl8.6" -pipe -O2 -fomit-frame-pointer -Wall -Wno-implicit-int -fPIC -c `echo ./unix/tclfuse.c` -o tclfuse.o ./unix/tclfuse.c:44:18: fatal error: fuse.h: No such file or directory
    #include <fuse.h>
    ^
    compilation terminated.
    Makefile:286: recipe for target 'tclfuse.o' failed
    make: *** [tclfuse.o] Error 1


    The error message told you what file was missing:

    fuse.h: No such file or directory

    Did you install the Linux fuse package? And if you are using one of
    those silly distros that separates runtime and development into
    separate packages, did you install the fuse development package?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Luc@21:1/5 to Ted Nolan on Sun Apr 16 00:58:30 2023
    On 16 Apr 2023 03:45:34 GMT, [email protected] (Ted Nolan ) wrote:

    It's been a while since I built it, and I can't get to that system
    right now, but I'm guessing you need to install something like
    "libfuse" & "libfuse-dev" on your system before you can compile tcl-fuse.


    OK, I didn't have libfuse-dev. I installed it and now I get this:

    make
    gcc -DPACKAGE_NAME=\"fuse\" -DPACKAGE_TARNAME=\"fuse\" -DPACKAGE_VERSION=\"1.1\" -DPACKAGE_STRING=\"fuse\ 1.1\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -
    DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DTCL_THREADS=1 -DMODULE_SCOPE=extern\ __attribute__\(\(__visibility__\(\"hidden\"\)\)\)
    -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DUSE_TCL_STUBS=1 -I"/usr/include/tcl8.6" -pipe -O2 -fomit-frame-pointer -Wall -Wno-implicit-int -fPIC -c `echo ./unix/tclfuse.c` -o tclfuse.o
    In file included from /usr/include/fuse/fuse.h:26:0,
    from /usr/include/fuse.h:9,
    from ./unix/tclfuse.c:44: /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!
    ^~~~~
    ./unix/tclfuse.c: In function ‘FuseCmd’:
    ./unix/tclfuse.c:270:28: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
    data->cmdtoken = Tcl_CreateCommand(interp, name, FsCmd, (ClientData) data, FsCmd_CleanUp);
    ^
    ./unix/tclfuse.c: In function ‘FsCmd’:
    ./unix/tclfuse.c:323:32: warning: passing argument 2 of ‘tclfuse_setup’ from incompatible pointer type [-Wincompatible-pointer-types]
    fuse = tclfuse_setup(argc, argv, data->op, sizeof(struct fuse_operations), &mountpoint,
    ^~~~
    ./unix/tclfuse.c:67:21: note: expected ‘char **’ but argument is of type ‘const char **’
    static struct fuse *tclfuse_setup(int argc, char *argv[],
    ^~~~~~~~~~~~~
    ./unix/tclfuse.c:342:48: warning: passing argument 1 of ‘tclStubsPtr->tcl_MakeFileChannel’ makes pointer from integer without a cast [-Wint-conversion]
    Tcl_Channel chan = Tcl_MakeFileChannel(fd, TCL_READABLE);
    ^~
    ./unix/tclfuse.c:342:48: note: expected ‘ClientData {aka void *}’ but argument is of type ‘int’
    ./unix/tclfuse.c: In function ‘ChannelEventHandler’: ./unix/tclfuse.c:405:60: warning: passing argument 2 of ‘tclStubsPtr->tcl_DeleteCommandFromToken’ makes pointer from integer without a cast [-Wint-conversion]
    Tcl_DeleteCommandFromToken(mp->fsdata->interp, mp->fsdata->cmdtoken);
    ^~ ./unix/tclfuse.c:405:60: note: expected ‘Tcl_Command {aka struct Tcl_Command_ *}’ but argument is of type ‘int’
    Makefile:286: recipe for target 'tclfuse.o' failed
    make: *** [tclfuse.o] Error 1


    --
    Luc


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Luc@21:1/5 to All on Sun Apr 16 01:15:09 2023
    Never mind, I solved the problem.

    The package is named tcl-fuse-1.1 but it seems it also packs something
    called TEA. And there is a README file with building instructions that
    were not working.

    It took me quite a while to realize that I was reading instructions for
    the TEA thing and the correct instructions for tcl-fuse were in a file
    named README.fuse.

    The correct instructions work and the package seems to work. I went as
    far as the 'package require fuse' part. It loads.

    Sorry and thanks again.

    --
    Luc


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)