0x09 / hfsfuse

FUSE driver for HFS+ filesystems
Other
77 stars 13 forks source link

ld: library not found for -lutf8proc #16

Closed stitch closed 3 years ago

stitch commented 3 years ago

Mac OS Catalina 10.15.7

Following the instructions on the front page.

make config WITH_UBILIO=none WITH_UTF8PROC=system
Makefile:87: Warning: git repo nor prepackaged version.h found, hfsfuse will be built without version information
echo "$CONFIG" > config.mak
user@iMac ~/D/hfsfuse-master> make 
Makefile:87: Warning: git repo nor prepackaged version.h found, hfsfuse will be built without version information
cc -Wall -Wextra -pedantic -Wno-gnu-zero-variadic-macro-arguments -Wno-unused-parameter -Wno-missing-field-initializers -Wno-missing-braces -DFUSE_USE_VERSION=28 -I/usr/local/include/osxfuse -I /Users/user/Downloads/hfsfuse-master/lib -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -c -o src/hfsfuse.o src/hfsfuse.c
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C lib/libhfsuser/
cc -Wall -Wextra -pedantic -Wno-gnu-zero-variadic-macro-arguments -Wno-unused-parameter -Wno-missing-field-initializers -Wno-missing-braces -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -DHAVE_BIRTHTIME -DHAVE_UBLIO -DHAVE_UTF8PROC -I /Users/user/Downloads/hfsfuse-master/lib -c -o cache.o cache.c
cc -Wall -Wextra -pedantic -Wno-gnu-zero-variadic-macro-arguments -Wno-unused-parameter -Wno-missing-field-initializers -Wno-missing-braces -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -DHAVE_BIRTHTIME -DHAVE_UBLIO -DHAVE_UTF8PROC -I /Users/user/Downloads/hfsfuse-master/lib -c -o features.o features.c
cc -Wall -Wextra -pedantic -Wno-gnu-zero-variadic-macro-arguments -Wno-unused-parameter -Wno-missing-field-initializers -Wno-missing-braces -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -DHAVE_BIRTHTIME -DHAVE_UBLIO -DHAVE_UTF8PROC -I /Users/user/Downloads/hfsfuse-master/lib -c -o hfsuser.o hfsuser.c
ar rcs libhfsuser.a cache.o features.o hfsuser.o
ranlib libhfsuser.a
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C lib/libhfs/
cc -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -c -o endian.o endian.c
cc -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -c -o libhfs.o libhfs.c
cc -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -c -o unicode.o unicode.c
ar rcs libhfs.a endian.o libhfs.o unicode.o
ranlib libhfs.a
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C lib/ublio/
cc -g -O2 -Wall -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -c ublio.c -o ublio.o
ar rcs libublio.a ublio.o
cc -D_FILE_OFFSET_BITS=64 -O3 -std=gnu11   -DHFSFUSE_VERSION_STRING=\"omitted\" -lutf8proc -o hfsfuse src/hfsfuse.o lib/libhfsuser/libhfsuser.a lib/libhfs/libhfs.a lib/ublio/libublio.a -losxfuse -lpthread
ld: library not found for -lutf8proc
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [hfsfuse] Error 1
0x09 commented 3 years ago

Hi @stitch, if you don't have a copy of utf8proc installed you can use the bundled version by simply running make without any extra arguments.

stitch commented 3 years ago

Hi 0x09, thanks! I've searched and found the library.

For reference: https://juliastrings.github.io/utf8proc/

Download it and then make, make install.

Thank you for your work 0x09! I hope i can open one of my old cd's again!

stitch commented 3 years ago

Turned out i needed HFS access, not HFS. Using HFSutils and some quick scripting i've extracted the contents of the disk. Here is the script, for anyone who is interested: https://gitlab.com/stitch1/hfsdiskrecursivecopy