Skip to content

does not compile on macOS #103

Open
Open

Description

@ThomasWaldmann
  • macOS 15
  • pyfuse 3.4.0
  • macFUSE 4.10.0 (first one with fuse3 support)
(pyfuse3-env) tw@MacBook-Pro pyfuse3 % python setup.py build_cython
found MANIFEST.in, running in developer mode
running build_cython
Using Cython version 3.0.11.
Compiling /Users/tw/w/pyfuse3/src/pyfuse3/__init__.pyx
(pyfuse3-env) tw@MacBook-Pro pyfuse3 % python setup.py build_ext --inplace
found MANIFEST.in, running in developer mode
running build_ext
building 'pyfuse3.__init__' extension
creating build
creating build/temp.macosx-15.0-arm64-cpython-311
creating build/temp.macosx-15.0-arm64-cpython-311/src
creating build/temp.macosx-15.0-arm64-cpython-311/src/pyfuse3
clang -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk -I/Users/tw/w/pyfuse3-env/include -I/opt/homebrew/opt/python@3.11/Frameworks/Python.framework/Versions/3.11/include/python3.11 -c src/pyfuse3/__init__.c -o build/temp.macosx-15.0-arm64-cpython-311/src/pyfuse3/__init__.o -I/usr/local/include/fuse3 -DFUSE_USE_VERSION=32 -Wall -Wextra -Wconversion -Wsign-compare -DPYFUSE3_VERSION=\"3.4.0\" -Wno-unused-function -Wno-implicit-fallthrough -Wno-unused-function -Wno-unused-parameter -Werror -Wfatal-errors -Wno-error=unreachable-code -Werror=conversion -Werror=sign-compare
src/pyfuse3/__init__.c:7897:88: fatal error: incompatible pointer types passing 'struct fuse_entry_param *' to parameter of type 'const struct fuse_darwin_entry_param *' [-Wincompatible-pointer-types]
 7897 |       __pyx_cur_scope->__pyx_v_ret = fuse_reply_entry(__pyx_cur_scope->__pyx_v_c->req, (&__pyx_cur_scope->__pyx_v_entry->fuse_param));
      |                                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/fuse3/fuse_lowlevel.h:1478:2: note: passing argument to parameter here
 1478 |         fuse_reply_entry,
      |         ^
1 error generated.
error: command '/usr/bin/clang' failed with exit code 1

Activity

  1. ThomasWaldmann commented on Mar 10, 2025

    @ThomasWaldmann
    CollaboratorAuthor

    Note: until macFUSE was updated recently with fuse3 support, everybody was using fuse(2), thus pyfuse3 of course was never compiled or tested on macOS.

    It would be good if it could be made working though because then sw could rather use pyfuse3 on macOS than llfuse.

  2. added this to the 3.4.1 milestone on Mar 10, 2025
  3. Nikratio commented on Mar 17, 2025

    @Nikratio
    Contributor

    It's possible that just suppressing the warning (Wincompatible-pointer-types) may make this work.. could you give it a shot?

  4. ThomasWaldmann commented on Mar 17, 2025

    @ThomasWaldmann
    CollaboratorAuthor

    @Nikratio thanks for the hint, this avoids the issue:

        # On macOS, there are some such warnings:
        compile_args.append('-Wno-incompatible-pointer-types')
    
  5. ThomasWaldmann commented on Mar 17, 2025

    @ThomasWaldmann
    CollaboratorAuthor

    Next issues:

    • there is no syncfs in unistd.h on macOS.

    • when running the tests:

    ___________________________________________________________________ test_sup_groups ___________________________________________________________________
    Traceback (most recent call last):
      File "/Users/tw/w/pyfuse3/test/test_api.py", line 33, in test_sup_groups
        gids = pyfuse3.get_sup_groups(os.getpid())
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "src/pyfuse3/__init__.pyx", line 1013, in pyfuse3.get_sup_groups
        with open('/proc/%d/status' % pid, 'r') as fh:
    FileNotFoundError: [Errno 2] No such file or directory: '/proc/46765/status'
    

    There is no /proc on macOS.

  6. modified the milestones: 3.4.1, 3.5.0 on Dec 22, 2025
  7. added theissue type on Dec 29, 2025
  8. ThomasWaldmann commented on Sep 4, 2026

    @ThomasWaldmann
    CollaboratorAuthor

    Another try in #153.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions