A tool that lets you reverse and freely change CRC checksums through smart file patching.
This repository is no longer maintained. The focus has shifted to a Python variant of this tool (the performance is equivalent).
- Patching and calculating CRC checksums for:
- CRC32
- CRC32POSIX (
cksum
from GNU coreutils) - CRC16CCITT
- CRC16IBM
- Available for GNU/Linux and Windows.
- Minimal GUI (supports CRC32 only; for more advanced options, use CLI version).
It appends a few bytes at the end of the file so that the file checksum computes to given hexadecimal hash.
GUI version:
CLI version:
To download precompiled binaries for Windows, head over to releases.
-
Make sure you have
g++
python3-setuptools
andpython3-wheel
packages installed -
Install Meson and Ninja
pip3 install meson ninja
-
Run following
meson build --buildtype release ninja -C build
The
crcmanip-gui
is not compiled by default. If you want to compile it, make sure you haveqt5
packages installed. Then replace the third step above with this one:meson build -Dgui=true --buildtype release ninja -C build
-
Install
mingw-w64
-
Replace the content of the
cross_mingw_i686.txt
andcross_mingw_x86_64.txt
files with the one of themingw-w64
files that you can find here -
Build the binaries
Windows 32-bit
meson build_windows32 \ --buildtype release \ --cross-file cross_mingw_i686.txt ninja -C build_windows32
Windows 64-bit
meson build_windows64 \ --buildtype release \ --cross-file cross_mingw_x86_64.txt ninja -C build_windows64
-
Install
mxe
-
Add the
mxe
path to the environment variablePATH
-
Install the static version of the qt5 library
Windows 32-bit
cd your/path/to/mxe/ make MXE_TARGETS=i686-w64-mingw32.static qt5
Windows 64-bit
cd your/path/to/mxe/ make MXE_TARGETS=x86_64-w64-mingw32.static qt5
-
Build the binaries
Windows 32-bit
meson build_windows32 \ --buildtype release \ -Dgui=true \ -Dmxe='/your/path/to/mxe/32-bit' \ --cross-file cross_mingw_i686.txt ninja -C build_windows32
Windows 64-bit
meson build_windows64 \ --buildtype release \ -Dgui=true \ -Dmxe='/your/path/to/mxe/64-bit' \ --cross-file cross_mingw_x86_64.txt ninja -C build_windows64
To build tests, simply add the -Dtests=true
option to the meson
command.