1. Download the PDFHummus/PDFWriter source code: https://github.com/galkahana/PDF-Writer
This library only has build instructions for MSVC toolchains within Visual Studio 2017/2019.
create folders PDFWriter\dependencies\lib\ and PDFWriter\dependencies\include
2. Use VCPKG to install the following libraries necessary for PDFHummus:
libtiff, libjpeg, libpng, and zlib
3. Download freetype from: git://git.savannah.gnu.org/freetype/freetype2.git
From the freetype2 source code root directory use Msys and run the following commands:
mingw32-make setup mingw32
mingw32-make
cp -r include\* ..\PDFHummus\PDFWriter\dependencies\include\
cp objs\libfreetype.a ..\PDFHummus\PDFWriter\dependencies\lib\
4. The PDFHummus/PDFWriter source code includes a copy of the source code for LibAesgm in a folder with the same name.
Go into this folder and run the following commands to generate the library:
// fpermissive is needed because the author chose to implicitly switch between pointers of uint_8 and char.
g++ -c -fpermissive *.o
ar -cvq aesgm.lib *.o
g++ -I "C:\Users\bad-p\Downloads\PDFHummus-build\PDFHummus\LibAesgm"