Opened 3 years ago

Closed 3 years ago

#63019 closed defect (fixed)

macfuse @4.1.2_0 / sshfs @2.10_1: dyld: Library not loaded: /opt/local/lib/libfuse.2.dylib

Reported by: vidakris Owned by: mohd-akram (Mohamed Akram)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: bigsur Cc:
Port: macfuse

Description

I'm trying to use sshfs and encfs, which both depend on macfuse. Macfuse has the following install notes:

  macfuse has the following notes:
    Run the following before using macFUSE:
    
        sudo ln -sn /opt/local/Library/Filesystems/macfuse.fs /Library/Filesystems/macfuse.fs
        sudo /Library/Filesystems/macfuse.fs/Contents/Resources/load_macfuse

both commands ran fine (after some wizardry with enabling non-standard kernel extensions), however, (ssh|enc)fs give now:

$ sshfs
dyld: Library not loaded: /opt/local/lib/libfuse.2.dylib
  Referenced from: /opt/local/bin/sshfs
  Reason: no suitable image found.  Did find:
	/opt/local/lib/libfuse.2.dylib: code signature in (/opt/local/lib/libfuse.2.dylib) not valid for use in process using Library Validation: Trying to load an unsigned library
	/opt/local/lib/libfuse.2.dylib: stat() failed with errno=1
	/usr/local/lib/libfuse.2.dylib: no matching architecture in universal wrapper
	/usr/local/lib/libfuse.2.dylib: no matching architecture in universal wrapper
	/opt/local/lib/libfuse.2.dylib: code signature in (/opt/local/lib/libfuse.2.dylib) not valid for use in process using Library Validation: Trying to load an unsigned library
Abort trap: 6

A workaround to get *fs working is to port clean the existing packages, install macfuse/osxfuse from the project webpage ( https://github.com/osxfuse/osxfuse/releases ), reinstall macfuse to have port dependencies fixed, but _not_ create the symlink to /Library, but that's nasty.

Change History (6)

comment:1 Changed 3 years ago by jmroot (Joshua Root)

Owner: set to mohd-akram
Port: macfuse added
Status: newassigned

Is this on an Intel or ARM machine?

comment:2 in reply to:  1 Changed 3 years ago by vidakris

It's ARM architecture

Replying to jmroot:

Is this on an Intel or ARM machine?

comment:3 Changed 3 years ago by MarcelBochtler (Marcel Bochtler)

I can reproduce this on my 2019 Intel Macbook Pro.

encfs works after running the two commands from macfuse's install notes:

sudo ln -sn /opt/local/Library/Filesystems/macfuse.fs /Library/Filesystems/macfuse.fs
sudo /Library/Filesystems/macfuse.fs/Contents/Resources/load_macfuse

After a reboot encfs stops working with this error:

kext load failed: -603947007
mount_macfuse: the file system is not available (255)
fuse failed.  Common problems:
 - fuse kernel module not installed (modprobe fuse)
 - invalid options -- see usage message

This can be fixed by running the second command from macfuse's install notes:

sudo /Library/Filesystems/macfuse.fs/Contents/Resources/load_macfuse

comment:4 in reply to:  3 ; Changed 3 years ago by mohd-akram (Mohamed Akram)

@vidakris This seems to be because code on M1 needs to be signed. Try running sudo codesign -s - /opt/local/lib/libfuse.2.dylib and see if it works then.

@MarcelBochtler This seems to be a different issue. Sometimes load_macfuse needs to be run a couple of times, and possibly after updating macfuse too. After rebooting again does it still work, or is this required for every reboot?

comment:5 in reply to:  4 Changed 3 years ago by vidakris

I uninstalled the macfuse package I had, ran the commands from the install notes, codesign indeed solved the issue until a reboot. After restarting the error message posted by MarcelBochtler came up.

Replying to mohd-akram:

@vidakris This seems to be because code on M1 needs to be signed. Try running sudo codesign -s - /opt/local/lib/libfuse.2.dylib and see if it works then.

@MarcelBochtler This seems to be a different issue. Sometimes load_macfuse needs to be run a couple of times, and possibly after updating macfuse too. After rebooting again does it still work, or is this required for every reboot?

Last edited 3 years ago by vidakris (previous) (diff)

comment:6 Changed 3 years ago by mohd-akram (Mohamed Akram)

Resolution: fixed
Status: assignedclosed

In 4f9b18129636ad8906aa6c4fb874280558090c3b/macports-ports (master):

macfuse: codesign binaries for arm64

Fixes: #63019

Note: See TracTickets for help on using tickets.