Command line build of DIA projects

We highly recommend building DIA projects in Digi ESP (our Eclipse-based development environment), but there are times where that is not optimal:

Doing a build at the command line is simple and efficient, and very flexible.

Python

You will need Python installed on your system to do the make process.

notES:

Windows or Mac

The easiest and most reliable way to get the correct Python environment on your build PC is to install ESP. It will install a compatible version of Python 2.4, Python 2.6 and Python 2.7.

ESP can be downloaded from the this page on our support website ESP download is under Development Tools.

Tip At least in the Windows installer, you will have the option to not install ESP, just the Python binaries. If you are short on space, this is a good idea. I do recommend doing the full installation, if nothing else to get the DIA documentation (part of the Help system in ESP). Who knows, you might also find ESP a good way to do your projects.

Linux or Unix

This is a bit trickier, as most distributions no longer have Python 2.4 in their repositories. Use your favorite search engine and search for instructions ("Ubuntu Python 2.4" for example). I was able to easily find instructions for Ubuntu, and there are several resources on the web as this is a common request.

If you are only developing for the X2e platform, you should have no problem getting Python 2.7.1.

How to get the build tree

The easiest way is to create a new "DIA Project" in ESP. In the first window, give your project a name, uncheck default location, enter a path that is easy for your to access, and check the "include DIA source code in project" checkbox.

Doing the build

Now, the easy part!

From the root directory of the tree (you will see subdirectories such as src\, lib\, doc\, etc.) type:

C:\Python24\Python.exe .\make.py cfg\MyCoolProject.yml

For X2e builds, use c:\Python27 instead.

The path to Python.exe may need to modified to match your PC, but this is normally the correct path for Windows.

Tip Though it is normal convention to name the file "dia.yml" it is not necessary when building this way. You can have a whole bunch of .yml files for different projects, point to them during the build process, and it will work just fine. The yml (no matter what the source yml filename is) is serialized and named "dia.pyr" in dia.zip during the make process (see the 6th line of output when running the make).

You will hopefully see something like this:

Project make started.
Analyzing files...
Compiling files...
Zipping files...
Finished writing archive 'bin\dia.zip'
Transforming settings file 'cfg\MyCoolProject.yml' to 'pyr' format...
Adding transformed settings as 'dia.pyr' to 'bin\dia.zip'...
Project make completed successfully.

Your dia.zip (the built project) will be in the bin\ directory. Transfer that to the /WEB/Python/ directory on your ConnectPort/ConnectCore gateway. If you have not already done an ESP build from this version of DIA on your gateway, you will also need to copy dia.py (resides in the root directory of the build tree) to the same directory.