Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
The granddaddy of HTML tools, with support for modern standards
C HTML Shell Other
branch: master

Add setting the CMAKE_BUILD_TYPE to

The default MUST set -DCMAKE_BUILD_TYPE=Release - without this addition
the -DNDEBUG compiler flag is NOT set, leaving 'asserts' in the code.

Asserts are good and necessary for a Debug version, for testing, but
with their brutal abort on error should NOT really be in Release code

And after all this is ONLY in a 'sample' script. Users
are free to use whatever options they desire in their own build of
tidy, and frequently do.
latest commit 4293c8cc3e
@geoffmcl geoffmcl authored

HTML Tidy with HTML5 support


  1. git -

  2. cmake -

  3. appropriate build tools for the platform

CMake comes in two forms - command line and gui. Some installations only install one or the other, but sometimes both. The build commands below are only for the command line use.

Also the actual build tools vary for each platform. But that is one of the great features of cmake, it can generate variuous 'native' build files. Running cmake without any parameters will list the generators available on that platform. For sure one of the common ones is "Unix Makefiles", which needs autotools make installed, but many other generators are supported.

In windows cmake offers various versions of MSVC. Again below only the command line use of MSVC is shown, but the tidy solution (*.sln) file can be loaded into the MSVC IDE, and the building done in there.

Build the tidy library and command line tool

  1. cd build/cmake

  2. cmake ../.. [-DCMAKE_INSTALL_PREFIX=/path/for/install]

  3. Windows: cmake --build . --config Release
    Unix/OS X: make

  4. Install, if desired:
    Windows: cmake --build . --config Release --target INSTALL
    Unix/OS X: [sudo] make install

By default cmake sets the install path to /usr/local in unix. If you wanted the binary in say /usr/bin instead, then in 2. above use -DCMAKE_INSTALL_PREFIX=/usr

In windows the default install is to C:\Program Files\tidy5, or C:/Program Files (x86)/tidy5, which is not very useful. After the build the tidy[n].exe is in the Release directory, and can be copied to any directory in your PATH environment variable, for global use.

If you need the tidy library built as a 'shared' (DLL) library, then in 2. add the command -DBUILD_SHARED_LIB:BOOL=ON. This option is OFF by default, so the static library is built and linked with the command line tool for convenience.

Prebuilt Binaries

An attempt is being made to publish pre-built binaries to - This is still a work in progress, but getting there..


This repository should be considered canonical for HTML Tidy as of 2015-January-15.

; eof

Something went wrong with that request. Please try again.