LMD VCL - DevUtil

From LMD
Jump to: navigation, search

<< Back to Getting started or Product Resources page



Customers who purchased LMD VCL Complete Subscription can request access data to our source code repository (which allows to download most current version at any time). The complete LMD VCL source branch is quite complex with its three main products (LMD-Tools, LMD ElPack and LMD IDE-Tools) + various sub- and standalone packages.
Therefore we created a small tool which allows simple and fast testing of any possible package combination. A package combination (a set of LMD projects, e.g. LMD-Tools Core Controls + ChartPack and DesignPack) is called a Workspace.


User with GIT can completely abstain from downloading full installers: Using the GIT sourcecode and LMD DevUtil any supported package can be easily created on the fly. Major features are:

  • Apart from a first huge download (of the current source releases) only actually changed source files (or better: even source changes) need to be downloaded in the future (instead of full installers with complete sourcecode).
  • Besides predefined workspaces, such as LMD VCL Complete or LMD-Tools (which actually correspond to available packages) you can set up any custom workspace. You need to attend specific dependencies (e.g. all LMD packages use shared lmd.rtl) only.
  • LMD DevUtil is very flexible and allows any number of different local workspaces with their own work/target folder.
  • Working folder features:
    • Prepare: prepares folder for work in specified IDE (very fast, by one button click), e.g. generate package files, create working project group.
    • Start: perform all mentioned above preparation and as well removes all other LMD packages from IDE registry, adds working folder to IDE search paths, builds packages and starts specified IDE with generated project group.
    • Cleanup: removes all compiled and garbage files; delete redundant package files, ect. Useful for file comparision with main source folder.
  • Setting common compiler switches via GUI.



At very first step you must ensure to get access to our source repository (based on GIT). Various ways are possible (and you are free to use any available client). We strongly recommend TortoiseGIT - a great free Windows-based GUI client to access GIT based repositories. We definitely like the way how integration into Windows Explorer is done.

  • URL of TortoiseGIT homepage is http://tortoisegit.net. In the left navigation bar click on Download and get the most appropriate installer for you.
    After downloading, run the installer. If you install TortoiseGIT the first time, you usually have to reboot your system.
  • Now you have to make your initial clone for the source branch (you should have received URL with your order). Start Windows Explorer, select a target drive and click somewhere with right mousebutton to display context menu. You will notice a new GIT Clone... menu item. Select this menu item to display the Clone dialog.
  • Enter here the URL of the repository (you received it with your access data) and the checkout directory. We suggest to use a directory name like C:\LMD2021VCL (in any case you should avoid to select an existing directory). Then press ok.
  • Ignore the message regarding a certificate, after that you will asked for username and password (which you received with your GIT access data). Now the complete and most current version of the LMD VCL Complete sourcecode will be downloaded onto your system.

Special Note: We strongly recommend not to change any files in the local repository. Always use DevUtil to generate working/installation folders. Reason: A common sourcebase for all relevant and supported compilers is used. When you check out source directories you will notice missing project files. They will always be autogenerated on the fly when needed.

  • Now start the first time LMDDevUtil.exe from the target folder.
    • A dialog will pop up and ask for the LMD VCL Source directory (usually the checkout directory, in our example: C:\LMD2021VCL) and the Root Working directory. The later one is used as variable (%ROOT_WORKDIR%) for different working directories. Mention here the target folder where compiled/generated versions should be located.
    • After that specify the name of the first Workspace on your system.


Using LMD DevUtil

After preparations the application window of LMD DevUtil should look as follows:

  1. Available workspaces
  2. Included projects
  3. Compiler switches
  4. Messages log window

The Workspace tab contains two sections: Local (your custom workspaces, where you can add/modify any number of workspaces) and Templates (the predefined ones, which represent actually all available LMD 2021 products. [Top]

Auto-compile packages and start IDE

To compile and install e.g. LMD-Tools into your IDE, simply follow these steps:

  • Select LMD-Tools workspace in Templates tab. Change any of available compiler switch options.
  • Click on Start button at top of application window. If IDE (in example: d11 represents Delphi 11) is already displayed in button, simply click on it. Otherwise, click the arrow and select the target IDE.
  • The files will be generated (and placed in the directory specified in Working directory
  • All packages will be compiled, IDE will be started, lib paths and package settings will be automatically updated. Also all packages specified on Additional tab will be automatically removed.


Messages output tab

When Start function is used, the compiler output is displayed here.

Prepare working folder only

To compile and install e.g. LMD-Tools into your IDE, simply follow these steps:

  • Select LMD-Tools workspace in Templates tab. Change any of available compiler switch options.
  • Click on Prepare button at top of application window. If IDE (in example: d11 represents Delphi 11) is already displayed in button, simply click on it. Otherwise click the arrow and select the target IDE.
  • All required files will be generated (in the directory specified in Working directory
  • No files will be compiled, only lib paths will be automatically updated. In addition a project group file will be generated which will include all selected projects. After you started IDE, you can simply load this project group file and compile/install all included packages.


Clean up feature

Removes all compiled and garbage files, deletes redundant package files, etc. Useful for file comparision with main source folder. This is NOT the same like pressing "Delete all files from working directory" button!

Delete all files from working directory

Press this button to delete ALL files from working directory. This is a required step when you want e.g. to generate files for a different workspace.

How to

Update GIT archive

Click with right mousebutton on GIT folder (in example: C:\LMD2021VCL). In context menu select Fetch or Pull. Now local GIT content will be synchronized with remote content (all updates since last checkout will be applied).

Create a custom workspace

To create a custom local workspace:

  • Switch to Local tab on left.
  • Click on "New workspace" button and modify the name.
  • The easiest way is to use project names from one of the Tempnlates workspaces. Simply use entries from "Projects" memo field and add/remove desired projects.
  • Specify a working directory, if required change compiler switches.
  • Form main menu select Save config now

Combine different workspaces

When you combine different workspaces, make sure that no redundant entries are included. E.g. to create a combined workspace of LMD-Tools and LMD-ElPack, lmd.rtl and lmd.rtlx projects need to be included only once: