I’m currently running the latest Legato version (18.04) with the mangOH 18.04 patches on my device. I’m curious if there is a way to point my Linux Developer Studio and/or a Windows Developer Studio instance to a custom legato application framework folder or possibly a modified/updated docker container (Windows). I really enjoy the UI and debugging features of Developer Studio, but I find myself needing to go outside of it when I need to run a more up-to-date version of the Legato application framework.
You can refer to this post in order to get DS working with a customized Legato version:
This is a Linux only solution at the moment.
Concerning Windows, it’s not that easy but doable…
You’ll need to build your custom Legato and build a new Docker image with it.
- build in Docker itself… but please take care that Legato can’t build on NTFS file system (
repodoesn’t support it), so this means that you have to do the
repo init/syncin the Docker context, and potentially modify your files in it (using
- take your custom Legato build made on a Linux host, and modify an existing Docker image by provisioning your legato build in
/legato(location where the pre-built framework lies in our Docker images)
Once you’ll have a custom Docker image with your stuff inside, you’ll have to get it provisioned on the Windows host.
If you used the first method, that should be OK.
If you used the second one, you’ll have to
docker save a tarball image on your Linux host, and
docker load it on your Windows host.
Then the final step will be to get it eaten by DS.
The easiest way would be to tweak the
package.xmi file that is lying in a “Legato Application Framework” package folder, in order to modify the reference to the docker image by your custom one.
All these steps would help to make the build working.
Then to make the debug working, you’ll have to copy as well the .so files (from the
legato/build/<your module> directory) on Windows as well, so that the Windows native gdb we’re using can find them.
And… that’s it.
FYI, we’re working on a new solution to deliver Legato pre-built packages, with harmonized user experience between command line/DS/Linux/Windows.
With this, that kind of scenario will become really easier to address