Building OSXFUSE

849 views
Skip to first unread message

besson3c

unread,
Jul 1, 2011, 6:07:05 AM7/1/11
to FUSE for OS X (OSXFUSE)
Hello,

I don't know whether or not this project is ready for public
consumption, but when I attempt to build this project the following
happens:

$ ./build.sh -t dist
OSXFUSEBuildTool(preflight) : Xcode version 4.0 found (minimum
requirement is 4.0.0)
OSXFUSEBuildTool(dist) : initiating Universal build of OSXFUSE
OSXFUSEBuildTool(dist) : configuration is 'Release'
OSXFUSEBuildTool(dist) : packaging flavor is 'Mainstream'
OSXFUSEBuildTool(dist) : locating OSXFUSE private key
OSXFUSEBuildTool(dist) failed: cannot find OSXFUSE private key in '/
Users/joe/.osxfuse_private_key'.


Is there a way to build this project without needing SSH public key
connectivity? Should I hold off on trying to build this project now?

Benjamin Fleischer

unread,
Jul 1, 2011, 10:12:05 AM7/1/11
to osxfus...@googlegroups.com
Hi Joe,

Am 01.07.2011 um 12:07 schrieb besson3c:

Hello,

I don't know whether or not this project is ready for public
consumption, but when I attempt to build this project the following
happens:

Public consumption, I don't think so. The whole thing is a work in progress and pretty much untested. It compiles fine under the right conditions but I cannot guarantee that it will actually work at this point. Besides, there are no filesystems supporting OSXFUSE at the moment.

Currently I'm working on a compatibility layer for MacFUSE filesystems. When that is done "all" MacFUSE filesystems should work with OSXFUSE out of the box (without the need to recompile them). There will be a alpha/beta release but I can't give you an exact timeframe when that will be the case.

In my opinion it would be best to keep using Tuxera's MacFUSE build if you need 64 bit support or the latest official beta 2.1.5 of MacFUSE. Tuxera's build can be downloaded at

There will be an announcement in this group once we have a reasonably stable build of OSXFUSE. 

$ ./build.sh -t dist
OSXFUSEBuildTool(preflight)   : Xcode version 4.0 found (minimum
requirement is 4.0.0)
OSXFUSEBuildTool(dist)        : initiating Universal build of OSXFUSE
OSXFUSEBuildTool(dist)        : configuration is 'Release'
OSXFUSEBuildTool(dist)        : packaging flavor is 'Mainstream'
OSXFUSEBuildTool(dist)        : locating OSXFUSE private key
OSXFUSEBuildTool(dist) failed: cannot find OSXFUSE private key in '/
Users/joe/.osxfuse_private_key'.


Is there a way to build this project without needing SSH public key
connectivity? Should I hold off on trying to build this project now?

Building OSXFUSE is virtually identical to building MacFUSE, at least for now. The build.sh script is the right place to start. You would have gotten the exactly same error when building MacFUSE. The private key file is used to sign official releases of OSXFUSE/MacFUSE.

To build target dist of OSXFUSE run 
OSXFUSE_PRIVATE_KEY=prefpane/autoinstaller/TestKeys/private_key.der ./build.sh -t dist

This will tell the build script to use the test key at prefpane/autoinstaller/TestKeys/private_key.der to sign your build. To build libfuse (part of target dist) you need to install gettext via MacPorts.

Regards,
Benjamin

besson3c

unread,
Jul 2, 2011, 3:07:10 PM7/2/11
to FUSE for OS X (OSXFUSE)
Cool! That got the build started, although it exited with an error
some ways into compilation... Would it be useful to report this to
you, or not so much at this point?

Is this build essentially equal to to the Tuxera build, or does it
include your compatibility layer stuff? If the latter, I'm assuming
that is why its not yet deemed ready for testing?


On Jul 1, 10:12 am, Benjamin Fleischer <flei...@gmail.com> wrote:
> Hi Joe,
>
> Am 01.07.2011 um 12:07 schrieb besson3c:
>
> > Hello,
>
> > I don't know whether or not this project is ready for public
> > consumption, but when I attempt to build this project the following
> > happens:
>
> Public consumption, I don't think so. The whole thing is a work in progress and pretty much untested. It compiles fine under the right conditions but I cannot guarantee that it will actually work at this point. Besides, there are no filesystems supporting OSXFUSE at the moment.
>
> Currently I'm working on a compatibility layer for MacFUSE filesystems. When that is done "all" MacFUSE filesystems should work with OSXFUSE out of the box (without the need to recompile them). There will be a alpha/beta release but I can't give you an exact timeframe when that will be the case.
>
> In my opinion it would be best to keep using Tuxera's MacFUSE build if you need 64 bit support or the latest official beta 2.1.5 of MacFUSE. Tuxera's build can be downloaded athttp://www.tuxera.com/mac/macfuse-core-10.5-2.1.9.dmg

Benjamin Fleischer

unread,
Jul 3, 2011, 5:39:00 AM7/3/11
to osxfus...@googlegroups.com
Am 02.07.2011 um 21:07 schrieb besson3c:

> Cool! That got the build started, although it exited with an error
> some ways into compilation... Would it be useful to report this to
> you, or not so much at this point?

It would definitively be useful, please send it.

> Is this build essentially equal to to the Tuxera build, or does it
> include your compatibility layer stuff? If the latter, I'm assuming
> that is why its not yet deemed ready for testing?

I haven't uploaded the compatibility stuff yet. Still there are some minor differences. Reorganizing the repository and rebranding MacFUSE could have introduced a bug or two. Tuxera's build on the other hand is well tested.

besson3c

unread,
Jul 17, 2011, 4:50:34 AM7/17/11
to FUSE for OS X (OSXFUSE)
Sorry for my slow response here, but you inspired me after seeing your
last post reporting your status... Here is my compile problem. I
didn't spend much time trying to fix this problem, I'm hoping that you
are either aware of this and have a quick fix, or would like to be
aware of this :)

[snipped]
libtool: install: /usr/bin/install -c .libs/libosxfuse.lai /tmp/
osxfuse-core-10.5-2.1.7/pkgroot//usr/local/lib/libosxfuse.la
libtool: install: warning: remember to run `libtool --finish /usr/
local/lib'
make[1]: Nothing to be done for `install-data-am'.
ln: /tmp/osxfuse-core-10.5-2.1.7/pkgroot//usr/local/lib/libosxfuse.la:
File exists
OSXFUSEBuildTool(smalldist) failed: cannot create symlink '/tmp/
osxfuse-core-10.5-2.1.7/pkgroot//usr/local/lib/libosxfuse.la' ->
'libosxfuse_i64.la'.

Benjamin Fleischer

unread,
Jul 17, 2011, 6:54:46 AM7/17/11
to osxfus...@googlegroups.com
I have not seen the issue you are reporting. Could it be that you pulled from the osxfuse repository but did not run "git submodule update" afterwards? AFAIK newer version of git (>= 1.7.5) update submodules automatically but Xcode 4 comes with git 1.7.3.4.

If that is not the case I need more information. Could you post the complete build log and the output of "ls -la /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/" after a failed build? Which commit are you trying to build? Have you tried the latest git version?

Joe Auty

unread,
Jul 17, 2011, 3:10:47 PM7/17/11
to osxfus...@googlegroups.com
Benjamin Fleischer
July 17, 2011 6:54 AM

I have not seen the issue you are reporting. Could it be that you pulled from the osxfuse repository but did not run "git submodule update" afterwards? AFAIK newer version of git (>= 1.7.5) update submodules automatically but Xcode 4 comes with git 1.7.3.4.

I'm running GIt 1.7.5.4, "git submodule update" doesn't seem to do anything when run after "git pull".


If that is not the case I need more information. Could you post the complete build log and the output of "ls -la /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/" after a failed build? Which commit are you trying to build? Have you tried the latest git version?

$ ls -la /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/
total 736
drwxr-xr-x  8 root  wheel     272 Jul 17 04:47 .
drwxr-xr-x  4 root  wheel     136 Jul 17 04:47 ..
lrwxr-xr-x  1 root  wheel      21 Jul 17 04:47 libosxfuse*.dylib -> libosxfuse_i64*.dylib
lrwxr-xr-x  1 root  wheel      18 Jul 17 04:47 libosxfuse.2.7.3.dylib -> libosxfuse.2.dylib
-rwxr-xr-x  1 root  wheel  360000 Jul 17 04:47 libosxfuse.2.dylib
lrwxr-xr-x  1 root  wheel      18 Jul 17 04:47 libosxfuse.dylib -> libosxfuse.2.dylib
-rwxr-xr-x  1 root  wheel     967 Jul 17 04:47 libosxfuse.la
drwxr-xr-x  3 root  wheel     102 Jul 17 04:47 pkgconfig


Where would I find the build log?

$ find . -name "*.log"

while in the osxfuse build directory turns up nothing.








besson3c
July 17, 2011 4:50 AM

Sorry for my slow response here, but you inspired me after seeing your
last post reporting your status... Here is my compile problem. I
didn't spend much time trying to fix this problem, I'm hoping that you
are either aware of this and have a quick fix, or would like to be
aware of this :)

[snipped]
libtool: install: /usr/bin/install -c .libs/libosxfuse.lai /tmp/
osxfuse-core-10.5-2.1.7/pkgroot//usr/local/lib/libosxfuse.la
libtool: install: warning: remember to run `libtool --finish /usr/
local/lib'
make[1]: Nothing to be done for `install-data-am'.
ln: /tmp/osxfuse-core-10.5-2.1.7/pkgroot//usr/local/lib/libosxfuse.la:
File exists
OSXFUSEBuildTool(smalldist) failed: cannot create symlink '/tmp/
osxfuse-core-10.5-2.1.7/pkgroot//usr/local/lib/libosxfuse.la' ->
'libosxfuse_i64.la'.




Benjamin Fleischer
July 3, 2011 5:39 AM


besson3c
July 2, 2011 3:07 PM

Cool! That got the build started, although it exited with an error
some ways into compilation... Would it be useful to report this to
you, or not so much at this point?

Is this build essentially equal to to the Tuxera build, or does it
include your compatibility layer stuff? If the latter, I'm assuming
that is why its not yet deemed ready for testing?



Benjamin Fleischer
July 1, 2011 10:12 AM

Hi Joe,



Public consumption, I don't think so. The whole thing is a work in progress and pretty much untested. It compiles fine under the right conditions but I cannot guarantee that it will actually work at this point. Besides, there are no filesystems supporting OSXFUSE at the moment.

Currently I'm working on a compatibility layer for MacFUSE filesystems. When that is done "all" MacFUSE filesystems should work with OSXFUSE out of the box (without the need to recompile them). There will be a alpha/beta release but I can't give you an exact timeframe when that will be the case.

In my opinion it would be best to keep using Tuxera's MacFUSE build if you need 64 bit support or the latest official beta 2.1.5 of MacFUSE. Tuxera's build can be downloaded at

There will be an announcement in this group once we have a reasonably stable build of OSXFUSE. 


Building OSXFUSE is virtually identical to building MacFUSE, at least for now. The build.sh script is the right place to start. You would have gotten the exactly same error when building MacFUSE. The private key file is used to sign official releases of OSXFUSE/MacFUSE.

To build target dist of OSXFUSE run 
OSXFUSE_PRIVATE_KEY=prefpane/autoinstaller/TestKeys/private_key.der ./build.sh -t dist

This will tell the build script to use the test key at prefpane/autoinstaller/TestKeys/private_key.der to sign your build. To build libfuse (part of target dist) you need to install gettext via MacPorts.

Regards,
Benjamin



--
Joe Auty, NetMusician
NetMusician helps musicians, bands and artists create beautiful, professional, custom designed, career-essential websites that are easy to maintain and to integrate with popular social networks.
www.netmusician.org
j...@netmusician.org

Benjamin Fleischer

unread,
Jul 17, 2011, 9:54:37 PM7/17/11
to osxfus...@googlegroups.com
By build log I meant be the entire output of the build script. There is no *.log file.

I still can't reproduce your problem, but this seems to be related to the git repository rather than the source or the build script. Two weeks ago I renamed libosxfuse libosxfuse_i32 and libosxfuse_ino64 libosxfuse_i64 (commit f1424bc55d4e5439c75f08202f525226f41c6dc5). This change is reflected in your build script (it tries to link libosxfuse.la to libosxfuse_i64.la) but not in your fuse submodule (there is no libosxfuse_i64 or libosxfuse_i32, for that matter). I'm not sure how this could happen, but your main osxfuse repository seems to be out of sync with it's fuse submodule and possibly the other submodules, too.

Here is how /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/ should have looked like at the point the build failed.

$ ls -l /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/
lrwxr-xr-x  1 root  wheel      26 17 Jul 21:18 libosxfuse.2.7.3.dylib -> libosxfuse_i64.2.7.3.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse.2.dylib -> libosxfuse_i64.2.dylib
lrwxr-xr-x  1 root  wheel      20 17 Jul 21:18 libosxfuse.dylib -> libosxfuse_i64.dylib
lrwxr-xr-x  1 root  wheel      17 17 Jul 21:18 libosxfuse.la -> libosxfuse_i64.la
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i32.2.7.3.dylib -> libosxfuse_i32.2.dylib
-rwxr-xr-x  1 root  wheel  360784 17 Jul 21:18 libosxfuse_i32.2.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i32.dylib -> libosxfuse_i32.2.dylib
-rwxr-xr-x  1 root  wheel     991 17 Jul 21:18 libosxfuse_i32.la
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i64.2.7.3.dylib -> libosxfuse_i64.2.dylib
-rwxr-xr-x  1 root  wheel  360800 17 Jul 21:18 libosxfuse_i64.2.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i64.dylib -> libosxfuse_i64.2.dylib
-rwxr-xr-x  1 root  wheel     991 17 Jul 21:18 libosxfuse_i64.la
drwxr-xr-x  2 root  wheel     102 17 Jul 21:18 pkgconfig

I did some poking around in the repository. At some point I had to rewrite history. Please clone it again and try to build. BTW everybody having a local copy should clone the repository again just to be sure not to run into a related problem.

cd osxfuse
git submodule update --init
OSXFUSE_PRIVATE_KEY=prefpane/autoinstaller/TestKeys/private_key.der ./build.sh -t dist

Please let me know if this works for you. 

--
Joe Auty, NetMusician
<nmtwitter.png>NetMusician helps musicians, bands and artists create beautiful, professional, custom designed, career-essential websites that are easy to maintain and to integrate with popular social networks.
www.netmusician.org
j...@netmusician.org


Joe Auty

unread,
Jul 17, 2011, 11:41:35 PM7/17/11
to osxfus...@googlegroups.com
That seems to work fine, thanks!

Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?

Benjamin Fleischer
July 17, 2011 9:54 PM

By build log I meant be the entire output of the build script. There is no *.log file.

I still can't reproduce your problem, but this seems to be related to the git repository rather than the source or the build script. Two weeks ago I renamed libosxfuse libosxfuse_i32 and libosxfuse_ino64 libosxfuse_i64 (commit f1424bc55d4e5439c75f08202f525226f41c6dc5). This change is reflected in your build script (it tries to link libosxfuse.la to libosxfuse_i64.la) but not in your fuse submodule (there is no libosxfuse_i64 or libosxfuse_i32, for that matter). I'm not sure how this could happen, but your main osxfuse repository seems to be out of sync with it's fuse submodule and possibly the other submodules, too.

Here is how /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/ should have looked like at the point the build failed.

$ ls -l /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/
lrwxr-xr-x  1 root  wheel      26 17 Jul 21:18 libosxfuse.2.7.3.dylib -> libosxfuse_i64.2.7.3.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse.2.dylib -> libosxfuse_i64.2.dylib
lrwxr-xr-x  1 root  wheel      20 17 Jul 21:18 libosxfuse.dylib -> libosxfuse_i64.dylib
lrwxr-xr-x  1 root  wheel      17 17 Jul 21:18 libosxfuse.la -> libosxfuse_i64.la
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i32.2.7.3.dylib -> libosxfuse_i32.2.dylib
-rwxr-xr-x  1 root  wheel  360784 17 Jul 21:18 libosxfuse_i32.2.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i32.dylib -> libosxfuse_i32.2.dylib
-rwxr-xr-x  1 root  wheel     991 17 Jul 21:18 libosxfuse_i32.la
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i64.2.7.3.dylib -> libosxfuse_i64.2.dylib
-rwxr-xr-x  1 root  wheel  360800 17 Jul 21:18 libosxfuse_i64.2.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i64.dylib -> libosxfuse_i64.2.dylib
-rwxr-xr-x  1 root  wheel     991 17 Jul 21:18 libosxfuse_i64.la
drwxr-xr-x  2 root  wheel     102 17 Jul 21:18 pkgconfig

I did some poking around in the repository. At some point I had to rewrite history. Please clone it again and try to build. BTW everybody having a local copy should clone the repository again just to be sure not to run into a related problem.

cd osxfuse
git submodule update --init
OSXFUSE_PRIVATE_KEY=prefpane/autoinstaller/TestKeys/private_key.der ./build.sh -t dist

Please let me know if this works for you. 





Joe Auty
July 17, 2011 3:10 PM


--
Joe Auty, NetMusician
NetMusician helps musicians, bands and artists create beautiful, professional, custom designed, career-essential websites that are easy to maintain and to integrate with popular social networks.
www.netmusician.org
j...@netmusician.org

Benjamin Fleischer

unread,
Jul 18, 2011, 12:31:49 AM7/18/11
to osxfus...@googlegroups.com
Am 18.07.2011 um 05:41 schrieb Joe Auty:

That seems to work fine, thanks!

No Problem. I'm glad it was nothing major.


Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Bad idea ... Cloning submodules manually and placing them in another repo will in most cases lead to problems since dependencies are not tracked and you would have to update your submodules manually.

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?

I'm not sure if it is a good idea to use OSXFUSE in a production environment at this point. That's why there has not  not been a beta version yet. There are still some things that do not work. For example the Xcode Templates need to be rebranded and converted to Xcode 4's new template format. The update feature does not work right now because nobody has setup the website yet. The namespace of the project might be changed from com.github.osxfuse to org.osxfuse. These are just a few points. The core functionality should be fine, though. If you decide to give it a shot, you should remove MacFUSE using its uninstall feature (MacFUSE Preference Pane) first. 

I'm not aware of any bugs, but OSXFUSE needs testing. But for one person it is impossible to test it with every MacFUSE filesystem that is around. OSXFUSE (with the compatibility layer) and MacFUSE are binary compatible. If your MacFUSE filesystems mount, you should be fine. I have not tested OSXFUSE with Leopard, yet.

If you find a bug please report it. If everything works as expected, please let me know which filesystem/application you used OSXFUSE with.

--
Joe Auty, NetMusician
<nmtwitter.png>NetMusician helps musicians, bands and artists create beautiful, professional, custom designed, career-essential websites that are easy to maintain and to integrate with popular social networks.
www.netmusician.org
j...@netmusician.org


Joe Auty

unread,
Jul 18, 2011, 3:07:42 AM7/18/11
to osxfus...@googlegroups.com
Where is OSXFuse installed? I'm trying to compile and install sshfs 2.3 (http://sourceforge.net/projects/fuse/files/sshfs-fuse/), but I'm getting the following compile error:

checking for pkg-config... /opt/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for SSHFS... no
configure: error: Package requirements (fuse >= 2.3 glib-2.0 gthread-2.0) were not met:

No package 'fuse' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables SSHFS_CFLAGS
and SSHFS_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.


Any suggestions for how I can compile sshfs? This is the filesystem I'm most interested in using.





Benjamin Fleischer
July 18, 2011 12:31 AM
Joe Auty
July 17, 2011 11:41 PM

That seems to work fine, thanks!

Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?





--
Joe Auty, NetMusician
NetMusician helps musicians, bands and artists create beautiful, professional, custom designed, career-essential websites that are easy to maintain and to integrate with popular social networks.
www.netmusician.org
j...@netmusician.org

Benjamin Fleischer

unread,
Jul 18, 2011, 3:43:57 AM7/18/11
to osxfus...@googlegroups.com
Am 18.07.2011 um 09:07 schrieb Joe Auty:

Where is OSXFuse installed? I'm trying to compile and install sshfs 2.3 (http://sourceforge.net/projects/fuse/files/sshfs-fuse/), but I'm getting the following compile error:

OSXFUSE is installed in various locations.

/usr/local/lib contains the low-level fuse libraries libosxfuse and libmacfuse.
/Library/Filesystems/osxfuse.fs contains the fuse kernel extension, installer and uninstaller
/Library/Frameworks/OSXFUSE.framework contains the Objective-C framework

checking for pkg-config... /opt/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for SSHFS... no
configure: error: Package requirements (fuse >= 2.3 glib-2.0 gthread-2.0) were not met:

No package 'fuse' found

The path to the package config file is /usr/local/lib/pkgconfig/osxfuse.pc. The configure script is looking for fuse.pc, which is not there. This could be fixed by setting up a symlink
$ sudo ln -s osxfuse.pc /usr/local/lib/pkgconfig/fuse.pc
I will include this link in my next repository update.

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Although /usr/local/lib is a standard prefix you have to run
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
before you start the configure script.


Alternatively, you may set the environment variables SSHFS_CFLAGS
and SSHFS_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

Any suggestions for how I can compile sshfs? This is the filesystem I'm most interested in using.

Amit patched sshfs 2.2 to be compatible with MacFUSE. I have not looked at sshfs 2.3 but I guess it has to be patched as well to work with OSXFUSE/MacFUSE. I will definitively look into this at some point.

You can find the HOWTO (MacFUSE) for compiling sshfs 2.2 at http://code.google.com/p/macfuse/wiki/HOWTO.

You can download a sshfs binary that works with OSXFUSE/MacFUSE at

Hope this helps.

--
Joe Auty, NetMusician
<nmtwitter.png>NetMusician helps musicians, bands and artists create beautiful, professional, custom designed, career-essential websites that are easy to maintain and to integrate with popular social networks.
www.netmusician.org
j...@netmusician.org


Joe Auty

unread,
Jul 18, 2011, 4:42:28 AM7/18/11
to osxfus...@googlegroups.com
I'm a moron.

I wasn't seeing osxfuse because I hadn't installed it from the disk image built into /tmp. Having done that, I'm able to mount sshfs filesystems using the sshfs binary from the MacFUSE project, which I'm assuming is also the same as the sshfs build on Macports? Adding a symlink from the sshfs-static in Macfusion to this binary I'm also able to use Macfusion, so in the coming days I'll be testing OSXFuse. I have backups of these files, so I'll tread carefully :)

I also tried to compile sshfs 2.3 without the patch and it wouldn't compile (although with your instructions I was able to get it to configure), and not surprisingly the 2.2 patch doesn't work with 2.3. I have no idea whether 2.3 even buys us anything, I just tried it initially not being aware of the need for patching.

I'm just looking at the sshfs 2.3 changelog now, and if you care, here are the changes since 2.2... Would it be a good idea to submit the OS X patches to this author or work with him on getting his code to build on OS X?

(I've rewritten the author's email address below for his privacy)

2011-07-01  Miklos Szeredi <aut...@email.com>

        * Released 2.3

2011-07-01  Miklos Szeredi <aut...@email.com>

        * Add hard link operation.  Works if the server supports the
        "hard...@openssh.com" protocol extension.

2011-03-25  Miklos Szeredi <aut...@email.com>

        * Fix possible deadlock on reconnection.  Reported by Florian
        Zumbiehl

2011-01-25  Miklos Szeredi <aut...@email.com>

        * Fix cleanup when ssh connection is terminated.  This prevents
        sshfs hanging when the server is rebooted, for example.

2010-03-16  Miklos Szeredi <aut...@email.com>

        * Set FD_CLOEXEC on fuse device.  This prevents deadlocks that
        happen in some circumstances (bugzilla.kernel.org #12864).
        Reported by Tim Connors

2009-07-15  Miklos Szeredi <aut...@email.com>

        * Check mountpoint and fuse options before starting an ssh
        session (debian bug #535333).  This is only supported if compiled
        against libfuse-2.6 or later. Reported by Greg Kochanski

        * Check that the remote path specified refers to the same type of
        file as the mountpoint, i.e. both are directories or both are
        non-directories (debian bug #535343).  Reported by Greg Kochanski

        * Allow mounting a single non-directory from the server

2009-07-15  Miklos Szeredi <aut...@email.com>

        * Check mountpoint and fuse options before starting an ssh
        session (debian bug #535333).  This is only supported if compiled
        against libfuse-2.6 or later. Reported by Greg Kochanski

        * Check that the remote path specified refers to the same type of
        file as the mountpoint, i.e. both are directories or both are
        non-directories (debian bug #535343).  Reported by Greg Kochanski

        * Allow mounting a single non-directory from the server

2009-07-15  Sebastian Dransfeld <seba...@tango.flipp.net>

        * Add option 'delay_connect': This will always create the sshfs mount,
        even if the connection to the server can't be established.

2009-01-27  Miklos Szeredi <aut...@email.com>

        * Print usage information and version to stdout, not stderr.
        Libfuse also needs to be fixed up.  Reported by Kārlis Repsons

2008-10-20  Miklos Szeredi <aut...@email.com>

        * Released 2.2 


Benjamin Fleischer
July 18, 2011 3:43 AM



OSXFUSE is installed in various locations.

/usr/local/lib contains the low-level fuse libraries libosxfuse and libmacfuse.
/Library/Filesystems/osxfuse.fs contains the fuse kernel extension, installer and uninstaller
/Library/Frameworks/OSXFUSE.framework contains the Objective-C framework
The path to the package config file is /usr/local/lib/pkgconfig/osxfuse.pc. The configure script is looking for fuse.pc, which is not there. This could be fixed by setting up a symlink
$ sudo ln -s osxfuse.pc /usr/local/lib/pkgconfig/fuse.pc
I will include this link in my next repository update.


Although /usr/local/lib is a standard prefix you have to run
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
before you start the configure script.


Amit patched sshfs 2.2 to be compatible with MacFUSE. I have not looked at sshfs 2.3 but I guess it has to be patched as well to work with OSXFUSE/MacFUSE. I will definitively look into this at some point.

You can find the HOWTO (MacFUSE) for compiling sshfs 2.2 at http://code.google.com/p/macfuse/wiki/HOWTO.

You can download a sshfs binary that works with OSXFUSE/MacFUSE at

Hope this helps.




Joe Auty
July 18, 2011 3:07 AM

Where is OSXFuse installed? I'm trying to compile and install sshfs 2.3 (http://sourceforge.net/projects/fuse/files/sshfs-fuse/), but I'm getting the following compile error:

checking for pkg-config... /opt/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for SSHFS... no
configure: error: Package requirements (fuse >= 2.3 glib-2.0 gthread-2.0) were not met:

No package 'fuse' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables SSHFS_CFLAGS
and SSHFS_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.


Any suggestions for how I can compile sshfs? This is the filesystem I'm most interested in using.









--
Joe Auty, NetMusician
NetMusician helps musicians, bands and artists create beautiful, professional, custom designed, career-essential websites that are easy to maintain and to integrate with popular social networks.
www.netmusician.org
j...@netmusician.org

Joe Auty

unread,
Jul 18, 2011, 4:57:39 AM7/18/11
to osxfus...@googlegroups.com
Joe Auty
July 18, 2011 4:42 AM

I'm a moron.

I wasn't seeing osxfuse because I hadn't installed it from the disk image built into /tmp. Having done that, I'm able to mount sshfs filesystems using the sshfs binary from the MacFUSE project, which I'm assuming is also the same as the sshfs build on Macports? Adding a symlink from the sshfs-static in Macfusion to this binary I'm also able to use Macfusion, so in the coming days I'll be testing OSXFuse. I have backups of these files, so I'll tread carefully :)

I also tried to compile sshfs 2.3 without the patch and it wouldn't compile (although with your instructions I was able to get it to configure), and not surprisingly the 2.2 patch doesn't work with 2.3. I have no idea whether 2.3 even buys us anything, I just tried it initially not being aware of the need for patching.

I'm just looking at the sshfs 2.3 changelog now, and if you care, here are the changes since 2.2... Would it be a good idea to submit the OS X patches to this author or work with him on getting his code to build on OS X?

Is Amit on this list? Is he the author of the sshfs patches? Are the Macports guys following this list too?

I'm just wondering what advice you might have on the possibility of working with the main FUSE guys on the OS X build of sshfs to possibly simplify this whole installation matrix, assuming you aren't interested in supporting the sshfs stuff yourself?

This is in no way my complaining, just seeing if I can help with getting some communication going if it isn't already :)


The fact that the patched sshfs works with OSXFuse is very cool, I can definitely see the virtues of not having to get authors to rewrite their stuff in the following fashion:

https://github.com/mgorbach/macfusion2/issues/15

besson3c

unread,
Jul 20, 2011, 3:37:35 PM7/20/11
to FUSE for OS X (OSXFUSE)
I'm now getting the following error running:

$ git submodule update
fatal: reference is not a tree:
481e1d8e6d297785663f604f87dad64d6d063c99
Unable to checkout '481e1d8e6d297785663f604f87dad64d6d063c99' in
submodule path 'fuse'

after doing a "git pull" in the main base level osxfuse directory. Is
this a problem I should be looking into on my end? I use Git every
day, but I've yet to get into submodules...


On Jul 18, 4:57 am, Joe Auty <j...@netmusician.org> wrote:
> >    Joe Auty <mailto:j...@netmusician.org>
> >> "hardl...@openssh.com" protocol extension.
> >> 2009-07-15  Sebastian Dransfeld <sebas...@tango.flipp.net>
>
> >>         * Add option 'delay_connect': This will always create the
> >> sshfs mount,
> >>         even if the connection to the server can't be established.
>
> >> 2009-01-27  Miklos Szeredi <aut...@email.com>
>
> >>         * Print usage information and version to stdout, not stderr.
> >>         Libfuse also needs to be fixed up.  Reported by Ka-rlis Repsons
>
> >> 2008-10-20  Miklos Szeredi <aut...@email.com>
>
> >>         * Released 2.2
>
> >>        Benjamin Fleischer <mailto:flei...@gmail.com>
> >> July 18, 2011 3:43 AM
>
> >> OSXFUSE is installed in various locations.
>
> >> /usr/local/lib contains the low-level fuse libraries libosxfuse and
> >> libmacfuse.
> >> /Library/Filesystems/osxfuse.fs contains the fuse kernel extension,
> >> installer and uninstaller
> >> /Library/Frameworks/OSXFUSE.framework contains the Objective-C framework
>
> >> The path to the package config file is
> >> /usr/local/lib/pkgconfig/osxfuse.pc. The configure script is looking
> >> for fuse.pc, which is not there. This could be fixed by setting up a
> >> symlink
> >> $ sudo ln -s osxfuse.pc /usr/local/lib/pkgconfig/fuse.pc
> >> I will include this link in my next repository update.
>
> >> Although /usr/local/lib is a standard prefix you have to run
> >> $ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
> >> before you start the configure script.
>
> >> Amit patched sshfs 2.2 to be compatible with MacFUSE. I have not
> >> looked at sshfs 2.3 but I guess it has to be patched as well to work
> >> with OSXFUSE/MacFUSE. I will definitively look into this at some point.
>
> >> You can find the HOWTO (MacFUSE) for compiling sshfs 2.2 at
> >>http://code.google.com/p/macfuse/wiki/HOWTO.
>
> >> You can download a sshfs binary that works with OSXFUSE/MacFUSE at
> >>http://code.google.com/p/macfuse/source/browse/#svn/trunk/filesystems...
>
> >> Hope this helps.
>
> >> ------------------------------------------------------------------------
>
> >>        Joe Auty <mailto:j...@netmusician.org>
> >> July 18, 2011 3:07 AM
>
> >> Where is OSXFuse installed? I'm trying to compile and install sshfs
> >> 2.3 (http://sourceforge.net/projects/fuse/files/sshfs-fuse/), but I'm
> >> getting the following compile error:
>
> >> checking for pkg-config... /opt/local/bin/pkg-config
> >> checking pkg-config is at least version 0.9.0... yes
> >> checking for SSHFS... no
> >> configure: error: Package requirements (fuse >= 2.3 glib-2.0
> >> gthread-2.0) were not met:
>
> >> No package 'fuse' found
>
> >> Consider adjusting the PKG_CONFIG_PATH environment variable if you
> >> installed software in a non-standard prefix.
>
> >> Alternatively, you may set the environment variables SSHFS_CFLAGS
> >> and SSHFS_LIBS to avoid the need to call pkg-config.
> >> See the pkg-config man page for more details.
>
> >> Any suggestions for how I can compile sshfs? This is the filesystem
> >> I'm most interested in using.
>
> >> ------------------------------------------------------------------------
>
> >>        Benjamin Fleischer <mailto:flei...@gmail.com>
> >>>>        Benjamin Fleischer <mailto:flei...@gmail.com>
> >>>> July 17, 2011 9:54 PM
>
> >>>> By build log I meant be the entire output of the build script.
> >>>> There is no *.log file.
>
> >>>> I still can't reproduce your problem, but this seems to be related
> >>>> to the git repository rather than the source or the build script.
> >>>> Two weeks ago I renamed libosxfuse libosxfuse_i32 and
> >>>> libosxfuse_ino64 libosxfuse_i64 (commit
> >>>> f1424bc55d4e5439c75f08202f525226f41c6dc5). This change is reflected
> >>>> in your build script (it tries to link libosxfuse.la to
> >>>> libosxfuse_i64.la) but not in your fuse submodule (there is no
> >>>> libosxfuse_i64 or libosxfuse_i32, for that matter). I'm not sure
> >>>> how this could happen, but your main osxfuse repository seems to be
> >>>> out of sync with it's fuse submodule and possibly the other
> >>>> submodules, too.
>
> >>>> Here is how /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/
> >>>> should have looked like at the point the build failed.
>
> >>>> $ ls -l
>
> ...
>
> read more »

Benjamin Fleischer

unread,
Jul 20, 2011, 3:50:55 PM7/20/11
to osxfus...@googlegroups.com
My bad, try again. I forgot to push the most recent commits to the fuse repository. Should work now. In theory submodules are a good thing but they come with some disadvantages, too

Joe Auty

unread,
Jul 20, 2011, 4:02:18 PM7/20/11
to osxfus...@googlegroups.com

$ git pull
Already up-to-date.

$ git submodule update
fatal: reference is not a tree: 9da31fbc7f9ddcd51f9f02014a4ae1e830bdf902
Unable to checkout '9da31fbc7f9ddcd51f9f02014a4ae1e830bdf902' in submodule path 'kext'

Benjamin Fleischer
July 20, 2011 3:50 PM

My bad, try again. I forgot to push the most recent commits to the fuse repository. Should work now. In theory submodules are a good thing but they come with some disadvantages, too




besson3c
July 20, 2011 3:37 PM

I'm now getting the following error running:

$ git submodule update
fatal: reference is not a tree:
481e1d8e6d297785663f604f87dad64d6d063c99
Unable to checkout '481e1d8e6d297785663f604f87dad64d6d063c99' in
submodule path 'fuse'

after doing a "git pull" in the main base level osxfuse directory. Is
this a problem I should be looking into on my end? I use Git every
day, but I've yet to get into submodules...



Joe Auty
July 18, 2011 4:57 AM

July 18, 2011 4:42 AM

I'm a moron.

I wasn't seeing osxfuse because I hadn't installed it from the disk image built into /tmp. Having done that, I'm able to mount sshfs filesystems using the sshfs binary from the MacFUSE project, which I'm assuming is also the same as the sshfs build on Macports? Adding a symlink from the sshfs-static in Macfusion to this binary I'm also able to use Macfusion, so in the coming days I'll be testing OSXFuse. I have backups of these files, so I'll tread carefully :)

I also tried to compile sshfs 2.3 without the patch and it wouldn't compile (although with your instructions I was able to get it to configure), and not surprisingly the 2.2 patch doesn't work with 2.3. I have no idea whether 2.3 even buys us anything, I just tried it initially not being aware of the need for patching.

I'm just looking at the sshfs 2.3 changelog now, and if you care, here are the changes since 2.2... Would it be a good idea to submit the OS X patches to this author or work with him on getting his code to build on OS X?

Is Amit on this list? Is he the author of the sshfs patches? Are the Macports guys following this list too?

I'm just wondering what advice you might have on the possibility of working with the main FUSE guys on the OS X build of sshfs to possibly simplify this whole installation matrix, assuming you aren't interested in supporting the sshfs stuff yourself?

This is in no way my complaining, just seeing if I can help with getting some communication going if it isn't already :)


The fact that the patched sshfs works with OSXFuse is very cool, I can definitely see the virtues of not having to get authors to rewrite their stuff in the following fashion:

https://github.com/mgorbach/macfusion2/issues/15





(I've rewritten the author's email address below for his privacy)

2011-07-01  Miklos Szeredi <aut...@email.com>

        * Released 2.3

2011-07-01  Miklos Szeredi <aut...@email.com>

        * Add hard link operation.  Works if the server supports the
        "hard...@openssh.com" protocol extension.
2009-07-15  Sebastian Dransfeld <seba...@tango.flipp.net>


        * Add option 'delay_connect': This will always create the sshfs mount,
        even if the connection to the server can't be established.

2009-01-27  Miklos Szeredi <aut...@email.com>

        * Print usage information and version to stdout, not stderr.
        Libfuse also needs to be fixed up.  Reported by Kārlis Repsons


2008-10-20  Miklos Szeredi <aut...@email.com>

        * Released 2.2 

July 18, 2011 3:43 AM



OSXFUSE is installed in various locations.

/usr/local/lib contains the low-level fuse libraries libosxfuse and libmacfuse.
/Library/Filesystems/osxfuse.fs contains the fuse kernel extension, installer and uninstaller
/Library/Frameworks/OSXFUSE.framework contains the Objective-C framework


The path to the package config file is /usr/local/lib/pkgconfig/osxfuse.pc. The configure script is looking for fuse.pc, which is not there. This could be fixed by setting up a symlink
$ sudo ln -s osxfuse.pc /usr/local/lib/pkgconfig/fuse.pc
I will include this link in my next repository update.


Although /usr/local/lib is a standard prefix you have to run
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
before you start the configure script.


Amit patched sshfs 2.2 to be compatible with MacFUSE. I have not looked at sshfs 2.3 but I guess it has to be patched as well to work with OSXFUSE/MacFUSE. I will definitively look into this at some point.

You can find the HOWTO (MacFUSE) for compiling sshfs 2.2 at http://code.google.com/p/macfuse/wiki/HOWTO.

You can download a sshfs binary that works with OSXFUSE/MacFUSE at

July 18, 2011 3:07 AM

Where is OSXFuse installed? I'm trying to compile and install sshfs 2.3 (http://sourceforge.net/projects/fuse/files/sshfs-fuse/), but I'm getting the following compile error:

checking for pkg-config... /opt/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for SSHFS... no
configure: error: Package requirements (fuse >= 2.3 glib-2.0 gthread-2.0) were not met:

No package 'fuse' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables SSHFS_CFLAGS
and SSHFS_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.


Any suggestions for how I can compile sshfs? This is the filesystem I'm most interested in using.








July 18, 2011 12:31 AM

Am 18.07.2011 um 05:41 schrieb Joe Auty:

That seems to work fine, thanks!

No Problem. I'm glad it was nothing major.

Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Bad idea ... Cloning submodules manually and placing them in another repo will in most cases lead to problems since dependencies are not tracked and you would have to update your submodules manually.

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?

I'm not sure if it is a good idea to use OSXFUSE in a production environment at this point. That's why there has not  not been a beta version yet. There are still some things that do not work. For example the Xcode Templates need to be rebranded and converted to Xcode 4's new template format. The update feature does not work right now because nobody has setup the website yet. The namespace of the project might be changed from com.github.osxfuse to org.osxfuse. These are just a few points. The core functionality should be fine, though. If you decide to give it a shot, you should remove MacFUSE using its uninstall feature (MacFUSE Preference Pane) first. 

I'm not aware of any bugs, but OSXFUSE needs testing. But for one person it is impossible to test it with every MacFUSE filesystem that is around. OSXFUSE (with the compatibility layer) and MacFUSE are binary compatible. If your MacFUSE filesystems mount, you should be fine. I have not tested OSXFUSE with Leopard, yet.

If you find a bug please report it. If everything works as expected, please let me know which filesystem/application you used OSXFUSE with.


July 17, 2011 9:54 PM

By build log I meant be the entire output of the build script. There is no *.log file.

I still can't reproduce your problem, but this seems to be related to the git repository rather than the source or the build script. Two weeks ago I renamed libosxfuse libosxfuse_i32 and libosxfuse_ino64 libosxfuse_i64 (commit f1424bc55d4e5439c75f08202f525226f41c6dc5). This change is reflected in your build script (it tries to link libosxfuse.la to libosxfuse_i64.la) but not in your fuse submodule (there is no libosxfuse_i64 or libosxfuse_i32, for that matter). I'm not sure how this could happen, but your main osxfuse repository seems to be out of sync with it's fuse submodule and possibly the other submodules, too.

Here is how /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/ should have looked like at the point the build failed.

That seems to work fine, thanks!

Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?




July 17, 2011 9:54 PM

By build log I meant be the entire output of the build script. There is no *.log file.

I still can't reproduce your problem, but this seems to be related to the git repository rather than the source or the build script. Two weeks ago I renamed libosxfuse libosxfuse_i32 and libosxfuse_ino64 libosxfuse_i64 (commit f1424bc55d4e5439c75f08202f525226f41c6dc5). This change is reflected in your build script (it tries to link libosxfuse.la to libosxfuse_i64.la) but not in your fuse submodule (there is no libosxfuse_i64 or libosxfuse_i32, for that matter). I'm not sure how this could happen, but your main osxfuse repository seems to be out of sync with it's fuse submodule and possibly the other submodules, too.

Here is how /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/ should have looked like at the point the build failed.

$ ls -l /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/
lrwxr-xr-x  1 root  wheel      26 17 Jul 21:18 libosxfuse.2.7.3.dylib -> libosxfuse_i64.2.7.3.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse.2.dylib -> libosxfuse_i64.2.dylib
lrwxr-xr-x  1 root  wheel      20 17 Jul 21:18 libosxfuse.dylib -> libosxfuse_i64.dylib
lrwxr-xr-x  1 root  wheel      17 17 Jul 21:18 libosxfuse.la -> libosxfuse_i64.la
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i32.2.7.3.dylib -> libosxfuse_i32.2.dylib
-rwxr-xr-x  1 root  wheel  360784 17 Jul 21:18 libosxfuse_i32.2.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i32.dylib -> libosxfuse_i32.2.dylib
-rwxr-xr-x  1 root  wheel     991 17 Jul 21:18 libosxfuse_i32.la
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i64.2.7.3.dylib -> libosxfuse_i64.2.dylib
-rwxr-xr-x  1 root  wheel  360800 17 Jul 21:18 libosxfuse_i64.2.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i64.dylib -> libosxfuse_i64.2.dylib
-rwxr-xr-x  1 root  wheel     991 17 Jul 21:18 libosxfuse_i64.la
drwxr-xr-x  2 root  wheel     102 17 Jul 21:18 pkgconfig

I did some poking around in the repository. At some point I had to rewrite history. Please clone it again and try to build. BTW everybody having a local copy should clone the repository again just to be sure not to run into a related problem.

cd osxfuse
git submodule update --init
OSXFUSE_PRIVATE_KEY=prefpane/autoinstaller/TestKeys/private_key.der ./build.sh -t dist

Please let me know if this works for you. 





July 18, 2011 3:43 AM



OSXFUSE is installed in various locations.

/usr/local/lib contains the low-level fuse libraries libosxfuse and libmacfuse.
/Library/Filesystems/osxfuse.fs contains the fuse kernel extension, installer and uninstaller
/Library/Frameworks/OSXFUSE.framework contains the Objective-C framework


The path to the package config file is /usr/local/lib/pkgconfig/osxfuse.pc. The configure script is looking for fuse.pc, which is not there. This could be fixed by setting up a symlink
$ sudo ln -s osxfuse.pc /usr/local/lib/pkgconfig/fuse.pc
I will include this link in my next repository update.


Although /usr/local/lib is a standard prefix you have to run
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
before you start the configure script.


Amit patched sshfs 2.2 to be compatible with MacFUSE. I have not looked at sshfs 2.3 but I guess it has to be patched as well to work with OSXFUSE/MacFUSE. I will definitively look into this at some point.

You can find the HOWTO (MacFUSE) for compiling sshfs 2.2 at http://code.google.com/p/macfuse/wiki/HOWTO.

You can download a sshfs binary that works with OSXFUSE/MacFUSE at

July 18, 2011 3:07 AM

Where is OSXFuse installed? I'm trying to compile and install sshfs 2.3 (http://sourceforge.net/projects/fuse/files/sshfs-fuse/), but I'm getting the following compile error:

checking for pkg-config... /opt/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for SSHFS... no
configure: error: Package requirements (fuse >= 2.3 glib-2.0 gthread-2.0) were not met:

No package 'fuse' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables SSHFS_CFLAGS
and SSHFS_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.


Any suggestions for how I can compile sshfs? This is the filesystem I'm most interested in using.








July 18, 2011 12:31 AM

Am 18.07.2011 um 05:41 schrieb Joe Auty:

That seems to work fine, thanks!

No Problem. I'm glad it was nothing major.

Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Bad idea ... Cloning submodules manually and placing them in another repo will in most cases lead to problems since dependencies are not tracked and you would have to update your submodules manually.

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?

I'm not sure if it is a good idea to use OSXFUSE in a production environment at this point. That's why there has not  not been a beta version yet. There are still some things that do not work. For example the Xcode Templates need to be rebranded and converted to Xcode 4's new template format. The update feature does not work right now because nobody has setup the website yet. The namespace of the project might be changed from com.github.osxfuse to org.osxfuse. These are just a few points. The core functionality should be fine, though. If you decide to give it a shot, you should remove MacFUSE using its uninstall feature (MacFUSE Preference Pane) first. 

I'm not aware of any bugs, but OSXFUSE needs testing. But for one person it is impossible to test it with every MacFUSE filesystem that is around. OSXFUSE (with the compatibility layer) and MacFUSE are binary compatible. If your MacFUSE filesystems mount, you should be fine. I have not tested OSXFUSE with Leopard, yet.

If you find a bug please report it. If everything works as expected, please let me know which filesystem/application you used OSXFUSE with.


July 17, 2011 9:54 PM

By build log I meant be the entire output of the build script. There is no *.log file.

I still can't reproduce your problem, but this seems to be related to the git repository rather than the source or the build script. Two weeks ago I renamed libosxfuse libosxfuse_i32 and libosxfuse_ino64 libosxfuse_i64 (commit f1424bc55d4e5439c75f08202f525226f41c6dc5). This change is reflected in your build script (it tries to link libosxfuse.la to libosxfuse_i64.la) but not in your fuse submodule (there is no libosxfuse_i64 or libosxfuse_i32, for that matter). I'm not sure how this could happen, but your main osxfuse repository seems to be out of sync with it's fuse submodule and possibly the other submodules, too.

Here is how /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/ should have looked like at the point the build failed.

That seems to work fine, thanks!

Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?




July 18, 2011 4:42 AM

I'm a moron.

I wasn't seeing osxfuse because I hadn't installed it from the disk image built into /tmp. Having done that, I'm able to mount sshfs filesystems using the sshfs binary from the MacFUSE project, which I'm assuming is also the same as the sshfs build on Macports? Adding a symlink from the sshfs-static in Macfusion to this binary I'm also able to use Macfusion, so in the coming days I'll be testing OSXFuse. I have backups of these files, so I'll tread carefully :)

I also tried to compile sshfs 2.3 without the patch and it wouldn't compile (although with your instructions I was able to get it to configure), and not surprisingly the 2.2 patch doesn't work with 2.3. I have no idea whether 2.3 even buys us anything, I just tried it initially not being aware of the need for patching.

I'm just looking at the sshfs 2.3 changelog now, and if you care, here are the changes since 2.2... Would it be a good idea to submit the OS X patches to this author or work with him on getting his code to build on OS X?

(I've rewritten the author's email address below for his privacy)

2011-07-01  Miklos Szeredi <aut...@email.com>

        * Released 2.3

2011-07-01  Miklos Szeredi <aut...@email.com>

        * Add hard link operation.  Works if the server supports the
        "hard...@openssh.com" protocol extension.
2009-07-15  Sebastian Dransfeld <seba...@tango.flipp.net>


        * Add option 'delay_connect': This will always create the sshfs mount,
        even if the connection to the server can't be established.

2009-01-27  Miklos Szeredi <aut...@email.com>

        * Print usage information and version to stdout, not stderr.
        Libfuse also needs to be fixed up.  Reported by Kārlis Repsons


2008-10-20  Miklos Szeredi <aut...@email.com>

        * Released 2.2 

July 18, 2011 3:43 AM



OSXFUSE is installed in various locations.

/usr/local/lib contains the low-level fuse libraries libosxfuse and libmacfuse.
/Library/Filesystems/osxfuse.fs contains the fuse kernel extension, installer and uninstaller
/Library/Frameworks/OSXFUSE.framework contains the Objective-C framework


The path to the package config file is /usr/local/lib/pkgconfig/osxfuse.pc. The configure script is looking for fuse.pc, which is not there. This could be fixed by setting up a symlink
$ sudo ln -s osxfuse.pc /usr/local/lib/pkgconfig/fuse.pc
I will include this link in my next repository update.


Although /usr/local/lib is a standard prefix you have to run
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
before you start the configure script.


Amit patched sshfs 2.2 to be compatible with MacFUSE. I have not looked at sshfs 2.3 but I guess it has to be patched as well to work with OSXFUSE/MacFUSE. I will definitively look into this at some point.

You can find the HOWTO (MacFUSE) for compiling sshfs 2.2 at http://code.google.com/p/macfuse/wiki/HOWTO.

You can download a sshfs binary that works with OSXFUSE/MacFUSE at

July 18, 2011 3:07 AM

Where is OSXFuse installed? I'm trying to compile and install sshfs 2.3 (http://sourceforge.net/projects/fuse/files/sshfs-fuse/), but I'm getting the following compile error:

checking for pkg-config... /opt/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for SSHFS... no
configure: error: Package requirements (fuse >= 2.3 glib-2.0 gthread-2.0) were not met:

No package 'fuse' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables SSHFS_CFLAGS
and SSHFS_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.


Any suggestions for how I can compile sshfs? This is the filesystem I'm most interested in using.








July 18, 2011 12:31 AM

Am 18.07.2011 um 05:41 schrieb Joe Auty:

That seems to work fine, thanks!

No Problem. I'm glad it was nothing major.

Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Bad idea ... Cloning submodules manually and placing them in another repo will in most cases lead to problems since dependencies are not tracked and you would have to update your submodules manually.

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?

I'm not sure if it is a good idea to use OSXFUSE in a production environment at this point. That's why there has not  not been a beta version yet. There are still some things that do not work. For example the Xcode Templates need to be rebranded and converted to Xcode 4's new template format. The update feature does not work right now because nobody has setup the website yet. The namespace of the project might be changed from com.github.osxfuse to org.osxfuse. These are just a few points. The core functionality should be fine, though. If you decide to give it a shot, you should remove MacFUSE using its uninstall feature (MacFUSE Preference Pane) first. 

I'm not aware of any bugs, but OSXFUSE needs testing. But for one person it is impossible to test it with every MacFUSE filesystem that is around. OSXFUSE (with the compatibility layer) and MacFUSE are binary compatible. If your MacFUSE filesystems mount, you should be fine. I have not tested OSXFUSE with Leopard, yet.

If you find a bug please report it. If everything works as expected, please let me know which filesystem/application you used OSXFUSE with.


July 17, 2011 9:54 PM

By build log I meant be the entire output of the build script. There is no *.log file.

I still can't reproduce your problem, but this seems to be related to the git repository rather than the source or the build script. Two weeks ago I renamed libosxfuse libosxfuse_i32 and libosxfuse_ino64 libosxfuse_i64 (commit f1424bc55d4e5439c75f08202f525226f41c6dc5). This change is reflected in your build script (it tries to link libosxfuse.la to libosxfuse_i64.la) but not in your fuse submodule (there is no libosxfuse_i64 or libosxfuse_i32, for that matter). I'm not sure how this could happen, but your main osxfuse repository seems to be out of sync with it's fuse submodule and possibly the other submodules, too.

Here is how /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/ should have looked like at the point the build failed.

That seems to work fine, thanks!

Before I had simply cloned each submodule manually and moved them into the main repos directory. This seemed to work at the time, but I dunno...

Is there anything I could test to verify that this indeed replaced the old MacFUSE install without an issue, or anything to verify that your build is working for me?




July 17, 2011 9:54 PM

By build log I meant be the entire output of the build script. There is no *.log file.

I still can't reproduce your problem, but this seems to be related to the git repository rather than the source or the build script. Two weeks ago I renamed libosxfuse libosxfuse_i32 and libosxfuse_ino64 libosxfuse_i64 (commit f1424bc55d4e5439c75f08202f525226f41c6dc5). This change is reflected in your build script (it tries to link libosxfuse.la to libosxfuse_i64.la) but not in your fuse submodule (there is no libosxfuse_i64 or libosxfuse_i32, for that matter). I'm not sure how this could happen, but your main osxfuse repository seems to be out of sync with it's fuse submodule and possibly the other submodules, too.

Here is how /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/ should have looked like at the point the build failed.

$ ls -l /tmp/osxfuse-core-10.5-2.1.7/pkgroot/usr/local/lib/
lrwxr-xr-x  1 root  wheel      26 17 Jul 21:18 libosxfuse.2.7.3.dylib -> libosxfuse_i64.2.7.3.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse.2.dylib -> libosxfuse_i64.2.dylib
lrwxr-xr-x  1 root  wheel      20 17 Jul 21:18 libosxfuse.dylib -> libosxfuse_i64.dylib
lrwxr-xr-x  1 root  wheel      17 17 Jul 21:18 libosxfuse.la -> libosxfuse_i64.la
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i32.2.7.3.dylib -> libosxfuse_i32.2.dylib
-rwxr-xr-x  1 root  wheel  360784 17 Jul 21:18 libosxfuse_i32.2.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i32.dylib -> libosxfuse_i32.2.dylib
-rwxr-xr-x  1 root  wheel     991 17 Jul 21:18 libosxfuse_i32.la
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i64.2.7.3.dylib -> libosxfuse_i64.2.dylib
-rwxr-xr-x  1 root  wheel  360800 17 Jul 21:18 libosxfuse_i64.2.dylib
lrwxr-xr-x  1 root  wheel      22 17 Jul 21:18 libosxfuse_i64.dylib -> libosxfuse_i64.2.dylib
-rwxr-xr-x  1 root  wheel     991 17 Jul 21:18 libosxfuse_i64.la
drwxr-xr-x  2 root  wheel     102 17 Jul 21:18 pkgconfig

I did some poking around in the repository. At some point I had to rewrite history. Please clone it again and try to build. BTW everybody having a local copy should clone the repository again just to be sure not to run into a related problem.

cd osxfuse
git submodule update --init
OSXFUSE_PRIVATE_KEY=prefpane/autoinstaller/TestKeys/private_key.der ./build.sh -t dist

Please let me know if this works for you. 





July 18, 2011 3:43 AM



OSXFUSE is installed in various locations.

/usr/local/lib contains the low-level fuse libraries libosxfuse and libmacfuse.
/Library/Filesystems/osxfuse.fs contains the fuse kernel extension, installer and uninstaller
/Library/Frameworks/OSXFUSE.framework contains the Objective-C framework


The path to the package config file is /usr/local/lib/pkgconfig/osxfuse.pc. The configure script is looking for fuse.pc, which is not there. This could be fixed by setting up a symlink
$ sudo ln -s osxfuse.pc /usr/local/lib/pkgconfig/fuse.pc
I will include this link in my next repository update.


Although /usr/local/lib is a standard prefix you have to run
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
before you start the configure script.


Amit patched sshfs 2.2 to be compatible with MacFUSE. I have not looked at sshfs 2.3 but I guess it has to be patched as well to work with OSXFUSE/MacFUSE. I will definitively look into this at some point.

You can find the HOWTO (MacFUSE) for compiling sshfs 2.2 at http://code.google.com/p/macfuse/wiki/HOWTO.

You can download a sshfs binary that works with OSXFUSE/MacFUSE at
Reply all
Reply to author
Forward
0 new messages