Making rsync compile under Mac OS X 10.3.9 with extended
v.machado at permanence-informatique.fr
Fri Jan 25 16:45:41 GMT 2008
Le 24 janv. 08 à 16:30, Matt McCutchen a écrit :
> On Thu, 2008-01-24 at 13:25 +0100, Vitorio Machado wrote:
>> Somebody knows if it's possible to compile rsync (version 3 would be
>> great, but can be 2.6.x) under Mac OS X 10.3.9 with extended
>> I have tried to compile rsync from source but the problem I found is
>> that the xattr patch seems to need the acl patch. But 10.3 doesn't
>> have the ACL support so doesn't provides the expected headers and the
>> make command fails.
> In rsync 3, support for preserving acls and xattrs is in the trunk and
> the "acls" and "xattrs" patches just add acl and xattr protocol
> compatibility with older versions of rsync. Thus, you probably don't
> need to apply either patch. Try compiling rsync 3.0.0pre8 without
> patches, and if you still run into problems, post the exact error
First of all, thanks for your interest in my problem.
I will post precise error repport next week, I'm not at work at the
The problem is that apparently xattr code depends on ACL code. But
Mac OS X 10.3.9 doesn't have the needed API (gcc doesn't find headers
about ACL code in the system).
On a fresh downloaded source of rsync 3.0.0pre8 I've tried:
1) ./configure -> configuration completes fine without error
make -> error on acl header as described (will report the
precise error next week)
2) ./configure --disable-acl-support -> configuration completes
make -> compilation goes just fine
./rsync --version -> indicates in capabilities NO ACL and NO
xattr support, so disabling ACL I've also disabled xattr (what I do
need because the purpose is to backup mac files that are rich on
3) ./configure --disable-acl-support --enable-xattr-support ->
configuration completes without error
make -> same acl error as in point number 1.
This made me conclude the xattr code automatically activates the ACL
support. And as ACL doesn't compile on 10.3 it seems it will not
possible to have xattr on 10.3. Please say me that I'm wrong and that
there's a way to trick it.
Perhaps a patch like the one of RsyncX, http://www.quesera.com/
reynhout/misc/rsync+hfsmode/ , or http://home.onthenet.com.au/~q/
rsync/ , but applied to the last release. Note that I don't care so
much about compability of the 10.3 rsync I'll get and other versions.
The 10.3 rsync I want to compile doesn't need to talk with a rsync
server, the backup will be done locally on a HFS+ volume. All I want
is a fast incremental algorithm that preserve all the information
(data and ressource fork basically, permissions, dates, etc would be
fine but aren't mandatory) while making a copy.
I can't use RsyncX version of rsync because it have an annoying
double free bug. The version found at http://home.onthenet.com.au/~q/
rsync/ is compiled 10.4+ only. I didn't tried to compile it on 10.3,
will try it next week. http://www.quesera.com/reynhout/misc/rsync
+hfsmode/ patch approach doesn't seem the good one for me, I don't
want my files to be encoded as AppleDouble. And all those patch
aren't official. It would be a lot easier to track bugs and get it
progressing if it was the "official" rsync way to handle xattr. Don't
you think it's the better approach?
More information about the rsync