Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fuse not needed, but building fails without it on Monterey #29

Closed
startergo opened this issue Feb 10, 2022 · 8 comments
Closed

Fuse not needed, but building fails without it on Monterey #29

startergo opened this issue Feb 10, 2022 · 8 comments

Comments

@startergo
Copy link

configure: error: FUSE >= 2.6.0 was not found. Either older FUSE is still present, or FUSE is not fully installed (e.g. fuse, libfuse, libfuse2, libfuse-dev, etc packages). Source code: http://fuse.sf.net
@startergo
Copy link
Author

Went further by installing Macfuse with macports.
Executing sudo ./configure --exec-prefix=/ && sudo make && sudo make install gives me this error:

ntfs-3g.c:30:10: fatal error: 'fuse.h' file not found
#include <fuse.h>
         ^~~~~~~~
1 error generated.
make[2]: *** [ntfs_3g-ntfs-3g.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

@unsound
Copy link
Member

unsound commented Feb 10, 2022

I'm not sure what you mean by "FUSE not needed" in the title. If you're intending to build ntfs-3g, it's definitely needed. If you only want the tools and not the FUSE driver then the --disable-ntfs-3g option should be used.

You'd have to check with macports where they install the libfuse headers, ntfs-3g just uses the information in the supplied .pc file and if that information is incorrect then it won't find the headers.
I'd recommend installing macFUSE from the official package instead: https://osxfuse.github.io

@unsound unsound closed this as completed Feb 10, 2022
@startergo
Copy link
Author

After installing macFuse all the required libraries were installed and compilation succeeded, but sudo make install is broken due to the read only file system:

sudo make install
Making install in include
Making install in ntfs-3g
make[3]: Nothing to be done for `install-exec-am'.
 ../.././install-sh -c -d '/usr/local/include/ntfs-3g'
 /usr/bin/install -c -m 644 acls.h attrib.h attrlist.h bitmap.h bootsect.h cache.h collate.h compat.h compress.h debug.h device.h device_io.h dir.h ea.h efs.h endians.h index.h inode.h ioctl.h layout.h lcnalloc.h logfile.h logging.h mft.h misc.h mst.h ntfstime.h object_id.h param.h plugin.h realpath.h reparse.h runlist.h security.h support.h types.h unistr.h volume.h xattrs.h '/usr/local/include/ntfs-3g'
Making install in fuse-lite
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
Making install in libfuse-lite
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
Making install in libntfs-3g
 .././install-sh -c -d '//lib'
mkdir: //lib: Read-only file system
mkdir: //lib: Read-only file system
make[2]: *** [install-libLTLIBRARIES] Error 1
make[1]: *** [install-am] Error 2
make: *** [install-recursive] Error 1

How can it be installed manually?

@themightyoarfish
Copy link

You can try setting your --prefix (maybe also --exec-prefix) to something other than root so it's writeable, though that doesn't work on my system either.

@startergo
Copy link
Author

I just want to copy the required files to the systemwide folder, but I need to know which files are needed. If I just copy ntfs-3g to the /usr/local/bin it complains that some file is missing.

@unsound
Copy link
Member

unsound commented Feb 13, 2022

@startergo ./configure --exec-prefix=/usr/local && make && sudo make install should really be all that's needed to install the binaries. I just tested this command sequence on a fresh macOS Monterey VM instance and there was no error returned.

@startergo
Copy link
Author

startergo commented Feb 13, 2022

@unsound Thanks for this. It would be nice to add it to the Readme. Here is an Apple Script for it, which can be saved as an application:

on run {input, parameters}

    do shell script "diskutil unmount /dev/disk0s3 && /usr/local/bin/ntfs-3g -o auto_xattr  /dev/disk0s3 /Volumes/Bootcamp" with administrator privileges
    return input
end run

Where /dev/disk0s3 is the Bootcamp BSD device node in Disk Utility.

@startergo
Copy link
Author

ran into another issue during compilation. Fixed it with:

LDFLAGS="-L/usr/local/lib -lintl" ./configure --exec-prefix=/usr/local && make && sudo make install

Based on #5 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants