Description
Mica is a common plugin architecture for creating Debian Linux and Maemo cross-development environments based on Eclipse.
| Maemo IDE Common Architecture
Documentation
Foundation
Mica uses EMF, CDT, Pydev, DSF, RSE, and the Linux Tools Project as a foundation. While these projects themselves could provide a pretty full-featured environment, you are mostly restricted to developing programs on the host or a remote computer.
Cross-platform support
Mica provides the framework for integrating a Linux-based SDK into a full cross-development environment by abstracting process launching, process control, filesystem access, and filesystem mapping across machines and sandboxed SDKs.
Mica also supports end-user devices, allowing launching, debugging, and deploying applications on Debian Linux devices accessible over SSH and SBRSH (Scratchbox Remote Shell).
Projects and Languages
Mica provides a unified interface to different types of projects and to build configuration access in those projects. Build configurations may map directly to the underlying project model (such as for CDT) or be built on top of it (as for Pydev).
For C/C++ development, the CDT provides the project and editor support. Make and Autotools-based projects are supported using a custom builder and project model that knows how to convert and validate the project for building under sandboxes like Scratchbox. The SDK can be on the host, in a sandbox, on a virtual machine, or on a remote computer.
For Python development, the Pydev project provides the project support and editor support.
Debian Linux Support
Mica provides support for Debian Linux environments by supporting the "apt" and "dpkg" tools. Currently, you can synchronize your sandbox and device with the packages required by your project (as determined by scans of configure.ac or by hard-coded suggestions for given SDKs).
PC Connectivity Integration
Mica can integrate with the Maemo PC Connectivity project to support launching and debugging on a device over SSH and SBRSH.