1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- 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"
- 5.
- Download libtiff from: https://gitlab.com/libtiff/libtiff
- After compiling the libtiff library with the Cmake file, all object files are located in C:\Users\bad-p\Downloads\TRASH\libtiff-master\build\libtiff\CMakeFiles\tiff.dir
- Download libpng from: https://sourceforge.net/projects/libpng/files/libpng16/1.6.37/libpng-1.6.37.tar.xz/download?use_mirror=newcontinuum
- After compiling the libpng library with the Cmake file, all object files are located in C:\Users\bad-p\Downloads\TRASH\libpng-1.6.37\build\CMakeFiles\png_static.dir
-
- Download libjpeg from:https://sourceforge.net/projects/libjpeg/files/
- After compiling the libjpeg library with the Cmake file, all object files are located in C:\Users\bad-p\Downloads\TRASH\jpeg-6b
-
- Download zlib from: https://www.zlib.net/
- After compiling the zlib library with the Cmake file, all object files are located in C:\Users\bad-p\Downloads\TRASH\zlib-1.2.11
- For all CMake instructions create a build directory in the source root. CD in to build, run Cmake .. for windows using msys pass the 'Cmake .. -G "MSYS Makefiles"'
- build option to generate a makefile appropiate for msys; You can use make afterwards to compile as normal.
- After all of the object files are moved into the same folder, generate a library for PDFWriter.
- ar -cvq PDFWriter.lib *.o
- 14 April 2020
- Talked about cleaning up the README as well as rebuilding PDFHummus as a statically linked library "on my own". We will try and do this in a couple more sessions, so Wesley
- can rest his small brain. :D
- 19 May 2020
- Per Raymond Chen - "UAC Virtualization kicks in for applications which were designed for versions of Windows prior to Windows Vista.
- These applications often assume that they are running with administrative privileges, and when they try to write to file or registry locations
- that are normally restricted to administrators, they expect them to succeed. So UAC Virtualization lets those writes succeed by secretly redirecting
- them to another location inside the user profile. The reverse happens when the application later tries to read the file or registry key: If the file or
- key exists in the redirected location, it is used instead of the one in the administrative location." - Msft CTO
|