Mac OS X Sierra Install wget Network Downloader Utility

I recently learned that “wget” can continue getting a partially-downloaded (resume download) file. I am unable to find wget command on Mac OS X. How do I install install wget on Mac OS X (Mountain Lion/ Mavericks / Snow Leopard)? How can I install wget in Mac OS X without 3rd-party repo such as Homebrew or MacPorts?

You can install the latest version of GNU/wget and many other open source software without using Homebrew or MacPorts. The steps are as follows to install wget on macOS Sierra using either Homebrew or source code:

  1. Easy method #1: Install Homebrew and type command ‘brew install wget‘ on macOS Sierra.
  2. Source code method #2:
    1. Download, compile and install OpenSSL
    2. Download, compile and install wget on macOS Sierra

Let use see both methods in detailed.

Method #1: Install wget using brew (recommended method)

Trust me this is the best and easy method to install wget using Homebrew:

Install Homebrew

$ /usr/bin/ruby -e "$(curl -fsSL"

Install wget

$ brew install wget
Sample outputs:

Updating Homebrew...
==> Downloading
######################################################################## 100.0%
==> Pouring wget-1.19.1.sierra.bottle.tar.gz
?  /usr/local/Cellar/wget/1.19.1: 10 files, 1.6MB

Use wget

$ /usr/local/bin/wget url
$ /usr/local/bin/wget url/file.tar.gz
$ /usr/local/bin/wget

That is all, and you need to stop reading the rest. Please note that the rest of the following tutorial covers wget command installation using the source code method.

Method #2: Install wget using source code (recommended for advanced users only)

You need to install a free app called Xcode. It includes command line development tools such as gnu/gcc and friends. See how to install GCC Compiler with Xcode for more information.

Fig.01: Install gcc compiler on Mac OS X

I installed command line tools using the following command:
$ xcode-select --install

Step #1: Download gnu/wget source code

Use curl command as follows to download the latest gnu/wget from the official project site. Open the Terminal and than type the following commands:
$ cd /tmp
$ curl -O
$ ls -l

Sample outputs:

Fig.02: Downloading wget source code with the curl utility

Step #2: Extract files

Use the tar command to extract files on OS X as follows:
$ tar xvf wget-1.15.tar.gz
Sample outputs:

x wget-1.15/
x wget-1.15/doc/
x wget-1.15/doc/stamp-vti
x wget-1.15/doc/
x wget-1.15/doc/
x wget-1.15/NEWS
x wget-1.15/configure
x wget-1.15/ChangeLog
x wget-1.15/MAILING-LIST

Step #3: Configure, Compile and Install GNU/wget on OS X

First, cd to the wget-1.15 directory using cd command:
$ cd wget-1.15
To configure wget, enter:
$ ./configure --with-ssl=openssl
Sample outputs:

Configure: configuring for GNU Wget 1.15
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... build-aux/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating doc/Makefile
config.status: creating util/Makefile
config.status: creating po/
config.status: creating tests/Makefile
config.status: creating tests/
config.status: creating lib/Makefile
config.status: creating src/config.h
config.status: executing depfiles commands
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile

To compile wget on OS X, enter:
$ make
Sample outputs:

/Applications/  all-recursive
Making all in lib
rm -f alloca.h-t alloca.h && 
	  cat ./; 
	} > alloca.h-t && 
	mv -f alloca.h-t alloca.h
gcc  -O2 -Wall   -o wget cmpt.o connect.o convert.o cookies.o ftp.o css_.o css-url.o ftp-basic.o ftp-ls.o hash.o host.o html-parse.o html-url.o http.o init.o log.o main.o netrc.o progress.o ptimer.o recur.o res.o retr.o spider.o url.o warc.o utils.o exits.o build_info.o  version.o ftp-opie.o openssl.o http-ntlm.o ../lib/libgnu.a -liconv  -lssl -lcrypto -lz -ldl -lz -lz  
Making all in doc
./ -D VERSION="1.15" ./wget.texi wget.pod
/usr/bin/pod2man --center="GNU Wget" --release="GNU Wget 1.14" wget.pod > wget.1
Making all in po
Making all in tests
make[2]: Nothing to be done for `all'.
Making all in util
make[2]: Nothing to be done for `all'.
make[2]: Nothing to be done for `all-am'.

To install wget, enter:
$ sudo make install

Find out wget location on OS X

By default wget will be installed at the /usr/local/bin/wget. You can use the whereis utility (or type -a) to check the wget location, enter:
$ whereis wget
$ type -a wget
If you do not see output, edit $HOME/.bash_profile or $HOME/.bashrc and add/edit/append PATH as follows:
export PATH=${PATH}:/usr/local/bin
Save and close the file.

How do I use wget command?

The basic syntax is:
wget url
wget ftp://url/

To see wget version, type:
$ wget --version
Sample outputs:

Installed wget on macOS Sierra

How do I update installed gnu/wget on OS X?

Warning: The following method only works if you installed gnu/wget earlier using source code based method as described above. Do not use the following method if you installed wget using Homebrew or MacPorts.

A note about installing wget on macOS Sierra using source code

You need to first install the latest version of openssl:
### Step #1: Grab and install latest openssl version 1.19.1 using source code ###
$ cd /tmp/
$ curl -O
$ tar -zxvf openssl-1.1.0e.tar.gz
$ cd openssl-1.1.0e
$ ./config
$ make
$ sudo make install

Finally install wget using the following method:
### Step #2: Grab and install wget version 1.19.1 using source code ###
$ cd /tmp
$ curl -O
$ tar -zxvf wget-1.19.1.tar.gz
$ cd wget-1.19.1
$ export OPENSSL_CFLAGS="-I/usr/local/include"
$ export OPENSSL_LIBS="-L/usr/local/lib -lssl -lcrypto -lz"
$ ./configure --with-ssl=openssl
$ make
$ sudo make install
$ /usr/local/bin/wget url

See also

I recommend the following resources for usage and examples on both wget and curl commands:

And there you have it, gnu/wget installed from directly source code without using 3rd party repos.

This entry is 5 of 5 in the Linux/Unix install wget Tutorial series. Keep reading the rest of the series:
  1. Freebsd Install wget Utility To Download Files From The Internet
  2. How to install wget on RHEL 8 using the dnf command
  3. How to install wget on a Debian or Ubuntu Linux
  4. How to install wget on RHEL/CentOS 7 using yum
  5. Mac OS X Sierra Install wget Network Downloader Utility

Posted by: SXI ADMIN

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.


How to KVM, QEMU start or stop virtual machine from command line (CLI)

KVM or Kernel Based Virtual Machine is a popular virtualization technology. It allows you to run virtual guest machines over a host machine. To start...

How to Docker backup Saving and restoring your volumes

Running a Docker volume backup First, we spin up a temporary container, and we mount the backup folder and the target Docker volume to this container....

How to Start and Enable Firewalld on CentOS 7

In this article, we discuss how to start and enable firewalld. It is highly recommended that you have a firewall protecting your server.Pre-Flight CheckThese...