Crinkler is an executable file compressor (or rather, a compressing linker) for compressing small 32-bit Windows demoscene executables. As of 2020, it is the most widely used tool for compressing 1k/4k/8k intros.
Regardless of object inputs, Crinkler gets no further than
Linking...
Forced alignment of 1 code hunk to 1 (including entry point).
Uncompressed size of code: 192
Uncompressed size of data: 10
|-- Estimating models for code ----------------------------|
Oops! Crinkler has crashed.
Dump files written to dump0000_mini.dmp and dump0000_full.dmp
The created dmp files are 0 bytes in size.
When /COMPMODE:INSTANT is specified, Crinkler completes, producing a working executable.
releases/crinkler14/crinkler.exe works in all /COMPMODE options, producing a working executable.
releases/crinkler20/crinkler.exe without /COMPMODE:INSTANT crashes as above.
From the version history, Switched from Intel OpenMP to MSVC concurrency API. looks to be a suspect.
The DLL and LIB used are copied from Windows and MSVC; the test is a minimal asm:
Tested in Wine 7, Wine 9, 32-bit
Regardless of object inputs, Crinkler gets no further than
The created dmp files are 0 bytes in size.
When
/COMPMODE:INSTANT
is specified, Crinkler completes, producing a working executable.releases/crinkler14/crinkler.exe
works in all/COMPMODE
options, producing a working executable.releases/crinkler20/crinkler.exe
without/COMPMODE:INSTANT
crashes as above.From the version history,
Switched from Intel OpenMP to MSVC concurrency API.
looks to be a suspect.The DLL and LIB used are copied from Windows and MSVC; the test is a minimal asm: