Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to full (with all features - ACL support / Xattr support / xxhash library/ zstd library) install (compiling) rsync v3.2.3 on Mac?

Tags:

macos

rsync

I am trying to install rsync 3.2.3 on Mac by compiling it. But, I would like to install with all features. For that, it needs some libraries which in here (https://download.samba.org/pub/rsync/INSTALL) does not explain how can I install and/or compile them.

By the way, when I "./prepare-source", I get this message:

make: Nothing to be done for `conf'.

Is this right?

By running "./configure" I get this message:

Configure found the following issues:

  • Failed to find openssl/md4.h and openssl/md5.h for openssl crypto lib support.
  • Failed to find xxhash.h for xxhash checksum support.
  • Failed to find zstd.h for zstd compression support.
  • Failed to find lz4.h for lz4 compression support.

See the INSTALL file for hints on how to install the missing libraries and/or how to generate (or fetch) man pages: https://github.com/WayneD/rsync/blob/master/INSTALL.md

To disable one or more features, the relevant configure options are: --disable-openssl --disable-xxhash --disable-zstd --disable-lz4

configure.sh: error: Aborting configure run

So, like I said before, I would like to install all the features (ACL support / Xattr support / xxhash library/ zstd library).

Helps are very apreciated!

Thanks in advance!

like image 759
Brunck Avatar asked Oct 27 '25 07:10

Brunck


1 Answers

First, install Homebrew:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

And then execute the following command:

brew install xxhash; brew install zstd; brew install lz4; brew install openssl;
export LDFLAGS="-L/usr/local/opt/[email protected]/lib";
export CPPFLAGS="-I/usr/local/opt/[email protected]/include";
echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.zshrc;

Try again to execute: ./configure

UPDATE -- 06/05/2021

You can try to paste the following script into the terminal and run:

cd ~/Desktop;
curl -OL https://github.com/Cyan4973/xxHash/archive/v0.8.0.tar.gz;
tar -xvf v0.8.0.tar.gz;
cd xxHash-0.8.0;
make -j4;
sudo make install;

cd ~/Desktop;
curl -OL https://github.com/lz4/lz4/archive/v1.9.3.tar.gz;
tar -xvf v1.9.3.tar.gz;
cd lz4-1.9.3;
make -j4;
sudo make install;

cd ~/Desktop;
curl -OL https://www.openssl.org/source/openssl-1.1.1k.tar.gz;
tar -xvf openssl-1.1.1k.tar.gz;
cd openssl-1.1.1k ;
./config;
make -j4;
sudo make install;

cd ~/Desktop;
curl -OL https://github.com/facebook/zstd/archive/v1.5.0.tar.gz;
tar -xvf v1.5.0.tar.gz;
cd zstd-1.5.0 ;
make -j4;
sudo make install;

cd ~/Desktop;
curl -OL https://rsync.samba.org/ftp/rsync/src/rsync-3.2.3.tar.gz;
tar -xvf rsync-3.2.3.tar.gz;
cd rsync-3.2.3;
./configure;
make -j4;
sudo make install;

cd /usr/local/bin;
./rsync --version;

Finding all the software package source code download url is a tedious job. If you are a "script purist," you can indeed do this. But I think Homebrew can really free the programmer's hands and get rid of the nightmare of "submerged in the ocean of curl and printlog".

How do I know the download url of each package? Google a few days, in the end still have to refer to the Homebrew formulae Code:

xxhash:https://formulae.brew.sh/formula/xxhash#default

lz4: https://formulae.brew.sh/formula/lz4#default

openssl1.1: https://formulae.brew.sh/formula/[email protected]#default

zstd: https://formulae.brew.sh/formula/zstd#default

like image 164
Janyee Avatar answered Oct 28 '25 22:10

Janyee



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!