To install MCK, you need to unpack the contents of the MCK.zip archive (preferably into the same directory, answering “YES” to all questions about file replacement - some files in these archives are duplicated). Then you need to open the MirrorKOLPackageXX.dpk package from the Delphi IDE, while XX must correspond to the Delphi version (D3 for Delphi3, D4 for Delphi 4, D6 for Delphi6, D7 for Delphi7, and only for the Delphi5 version the extension is empty, i.e. the package carries name MirrodKOLPackage.dpk).
For Delphi, Borland Developer Studio, Turbo-Delphi versions, for which there is no package, but work with packages is supported, you can create an MCK package yourself. Three files should be added to the package: mirror.pas, mckObjs.pas, and mckCtrls.pas.
Then you need to click the Install button - on the toolbar of the package. If there is no ruler, the command is selected from the menu (in BDS, from the context menu on the project node). If you have problems with the installation, perhaps follow in the package options, or better - in Tools | Environment Options | Library | Library Path, add the path to $ (DELPHI) \ Source \ Toolsapi. This completes the MCK installation (during the first installation, you should see a very large list of installed components, all of them are installed in the KOL tab on the component bar).
Only in the Delphi2 version there is no need to open the package for installation, but a slightly different procedure is required (see the installation instructions, I do not intend to replace or duplicate it here).
Please note that when updating KOL and MCK to a new version (and this has to be done sometimes quite often, since the library is constantly evolving), you also need to open the MCK package, and perform Build (rebuilding) the package, but in no way the case is not Compile (recompilation). The fact is that when recompiling, unlike Build, the Delphi compiler erroneously uses the version of the pre-compiled KOL file that remains after working with current projects, and does not take into account the presence of significantly different compilation options in the package. As a result, after such an incomplete recompilation, the Delphi shell begins to malfunction, even to a permanent crash.
And note that when you go from working with a package back to working with applications, then at least the first time you should build again (Build), not compile (Compile) for the application. Otherwise, the compiler will again not notice that the conditional compilation character set has changed, and will try to use the KOL.dcu file generated when building the MCK package. And since in this case there were indirect references to VCL modules of design time, then Delphi will certainly require it to find the proxies.dcu file (which simply does not exist).