Open mkuron opened 12 years ago
I had to change one thing on the configure.mk file:
the line for "$(call PKG_CONFIG_CHK,fuse,-I/usr/local/include/osxfuse/fuse,-L/usr/local/lib -lfuse)" is actually "$(call PKG_CONFIG_CHK,fuse,-I/usr/local/include/osxfuse/fuse,-L/usr/local/lib -\ losxfuse)", since we're using "osxfuse" instead of "fuse"
On OS X 10.8.2, after following your instructions, "sudo make install" fails with the message:
make: *\ No rule to make target debugvmfs/debugvmfs.8', needed by
/usr/local/share/man/man8/debugvmfs.8'. Stop.
I'm clueless as to how to fix this. Can you help me out?
I had this issue on macOS Sierra (10.12), and was able to fix it with @mkuron did, with one minor modification: instead of adding #ifdef
conditions, I had to just add each include. It appears that (at least with my version of gcc) _APPLE_
is not defined, so the sys/xxxx
headers aren't included if you use the ifdef
condition.
__APPLE__
(two underscores in front, two behind) is defined. A single _ is not. Which did you try, @xtrasimplicity ?
@skandragon, this was so long ago that I don't actually have that particular install of OS X anymore, so I can't check, unfortunately! I'd like to think that I just mistyped __APPLE__
, but I can't say for certain! :)
I tried to compile vmfs-tools on Mac OS X 10.6.8. In its current state, it fails, but fixing it is rather simple:
Missing u_char typedef:
#include <sys/types.h>
Missing strnlen():#define strnlen(s, maxlen) (strlen (s) < maxlen ? strlen (s) : maxlen)
Missing timersub() and gettimeofday():#include <sys/time.h>
Missing libuuid: Download e2fsprogs,./configure
it,cd lib/uuid
,make
, copy the uuid folder to vmfs-tools. (e2fsprogs from MacPorts does not help as it gets built without libuuid) FUSE: Install osxfuseBelow is a diff file for these changes. The changes to C code have ifdef around them and could thus easily go into the official code. The changes required to configure.mk to find fuse and uuid are more invasive; I don't know much about automake, but I'm sure you could wrap some kind of if-clause around it.
Now everything compiles without warnings or errors. debugvmfs works fine on test.img, but I have not tested yet whether vmfs-fuse works on an actual volume (as far as I can tell, it does not mount bitmap files like test.img, so I can't test it right now). If someone sends me a dd image of a VMFS, I can test that and the other tools.