LinuxDevices.com Archive Index (1999-2012) | 2013-current at LinuxGizmos.com | About  

Eclipse releases new device development tools

Nov 13, 2006 — by LinuxDevices Staff — from the LinuxDevices Archive

The Eclipse Foundation today released two plug-ins aimed at making the open-source Eclipse IDE (integrated development environment) more useful to device developers, and a third has achieved a milestone pre-release, version 0.7. Two of the three need more community participation to improve their Linux support.

The three newly available device-oriented Eclipse plug-ins are:

  • Target Management (TM) 1.0
  • Embedded Rich Client Platform (eRCP) 1.0
  • Mobile Tools for the Java Platform (MTJ) 0.7

All three plug-ins were developed under the aegis of a top-level Eclipse Foundation project called the Device Software Development Platform (DSDP). Today marks the first release of DSDP plug-ins with major 1.0 version numbers, signifying maturity and stability.

Spearheaded by long-time development tools leader Wind River, the DSDP project was founded in mid-2005, and has since attracted about 40 “committers” (significant software contributors) representing ten companies. Like other top-level Eclipse projects, it organizes multiple sub-projects aimed at creating plug-ins for the modular, open source Eclipse IDE. The IDE has been widely adopted by embedded tools vendors, in part because it runs on Linux, Windows, Solaris, and Macintosh development hosts, saving vendors the pain of maintaining their tools on multiple platforms.

Eclipse plug-ins enable commercial tools vendors and individual users to customize the modular, extensible Eclipse IDE according to their needs — mixing and matching components from multiple third party providers, as well as from the open source community. Plug-ins typically used by device developers include code editors for various languages (C/C++ and Java are popular), debuggers, compilers, and test suites and automation frameworks.

Doug Gaff, a Wind River engineering manager who heads up the DSDP's organizing committee, says today's milestone releases signal gathering DSDP momentum, as well as the increasing significance of Eclipse to device developers.

Gaff said, “[Wind River] helped found DSDP because we wanted to get products out that would start to catalyze [the device tools] space. We have a lot of commercial stuff we want to contribute, which is why we sponsor a couple of DSDP projects. It has been encouraging, to say the least, how many projects have gravitated to [the DSDP project]. And, the diversity of projects is also encouraging, reflecting the diversity of the device market itself.”

DSDP background

Gaff said the DSDP project grew out of a “birds of a feather” session at the first Eclipse.con. He recalls, “We talked about how the C Development Tool project has produced a lot of great stuff for device developers, but how we have a lot of needs beyond that. So Wind River said, 'Let's start a project.' [story]

The Eclipse Foundation approved the DSDP project in June of 2005, and it got underway with two initial projects — Target Management and Device Debugging — both driven by Wind River. Six months later, the Nokia-driven Mobile Tools for Java project launched, along with a Native Application Builder project driven by WideStudio.org.

Subsequently, the eRCP project migrated from Eclipse's “Technology” category for project incubation into DSDP.

Additionally, a Tools for Mobile Linux project is currently incubating within DSDP. “TML is still in the 'proposed' phase, and we're still building a development community, defining requirements, and not writing software yet,” Gaff said.

Today's three milestone releases

Target Management

The Target Management (TM) project aims to help device developers configure, manage, and debug remote systems, for example by launching the GNU debugger within the CDT C/C++ code editor, with files from a remote device's filesystem.

Gaff recalls, “We realized that everyone was building their own, so we got together with IBM and MontaVista. IBM's Remote System Explorer was the furthest along, in terms of being extensible, so we decided to build on that.”

Additional TM project contributors include PalmSource, Symbian, and Tradescape.

Gaff said that TM can be used during device development, in much the same way that embedded Linux developers today commonly use NFS to extend a filesystem on a development host to a target device. Alternatively, TM can be used to transparently synchronize files on a remote filesystem, as if it were mounted locally.

Gaff said, “If you can make a network connection to the device, you can manage it. You can mix local and remote filesystems, and the RSE component of TM deals with remote synchronization.”

The TM plugin is designed for extensibility, where transport mechanisms are concerned. The 1.0 release ships with sample implementations for TCP/IP connections, FTP data transfer, and GDB remote launching in the CDT environment. It can also support NFS, SSH, and IBM's formerly proprietary DataStor protocol, Gaff said. He adds, “In the future, we'll create more complex launch sequences.”

TM appears to be limited to one user at a time, although device development typically involves only a single user working on a given filesystem at one time, Gaff noted.

He summarizes, “The motivation is in real-time applications, allowing users to define new services. What we have now is a framework for that.”

Embedded Rich Client Platform 1.0

The eRCP project aims to extend Eclipse's RCP (rich client platform) capabilities to devices, with the goal of helping enterprise developers port rich client Java applications to devices. Rich client applications are client-server applications in which a significant amount of processing is done on the client — in this case, a device.

With the 1.0 release, the eRCP client is limited to Windows Mobile 2003/2005 and Nokia Series 80 and S60 devices. However, Gaff said that adding support for Linux should be fairly simple. He hopes the 1.0 release will inspire community developers to “jump on the bandwagon.”

Gaff explains, “Eclipse is designed to build two types of applications: an IDE for a specific language, or a rich client application. A subset of the IDE packages make up the Rich Client Platform.”

He continues, “The primary work of the eRCP project was to port Eclipse's SWT [standard widget toolkit] to various mobile platforms — creating 'eSWT' libraries.”

What about Linux support? “We're working on a port to Trolltech's QPE [Qtopia Phone Edition], but for other graphics frameworks, not enough Linux people are participating, in my opinion,” Gaff said.

He explains, “A good place to start would be a native Linux development port, to just port eRCP to a Linux desktop. That's not a heck of a lot of work. All eRCP does is connect SWT to native windowing calls, and there's already a Linux port of SWT, so you'd just have to do an eSWT.”

“Once [eRCP] is ported to native Linux, it would probably even run on Wind River Linux. We're very careful to keep our distribution aligned with mainline,” he adds.

Gaff notes that a similar port of eRCP-specific libraries already exists for Windows desktops, and has proven useful. “Most developers want to develop on a desktop initially anyway, and then move onto the target when they have to,” he noted.

Mobile Tools for Java 0.7

Another DSDP project in need of Linux contributors is the Nokia-driven MTJ effort, which currently supports Windows development hosts and Nokia's Symbian-based mobile devices. The MTJ project is driven by Nokia (project lead), with significant participation from IBM and Sony Ericsson.

MTJ includes a “deployment framework” aimed at helping developers build runtimes that support various mobile device configurations (CLDC and CDC, for example) and profiles (MIDP, Foundation Profile, and Personal Profile, for example). Currently, CLDC+MIDP is cited as the most commonly targeted build.

The 0.7 release of MTJ also includes a device emulation framework, generic build processes for mobile application development, mobile device debugging, application creation wizards, and UI design tools, along with localization, optimization, and security features.

Gaff explains, “MTJ address the 'building and deployment' portion of building JME applications. The challenge is to deploy the application to the device. In the case of Nokia 60 and 80, or Windows Mobile, you can just copy the files to the device. But MTJ aims to automate deployment, so it's part of the lifecycle management capabilities in Eclipse.”

In a statement announcing the three DSDP milestone releases, Eclipse Foundation Executive Director Mike Milinkovich said, “The DSDP project is crucial to fulfilling Eclipse's goal of creating a universal development platform for increasingly complex software. DSDP has gained rapid momentum, and with these three major releases, the project now provides a broad foundation for commercial device software.”

Gaff added, “Wind River is particularly pleased that because of Target Management's successful release, device software developers now have an open source framework and a set of views for managing remote embedded systems from Eclipse. Wind River plans to adopt the Target Management technology in our next release of Wind River Workbench.”

According to IBM's Mark Rogalski, DSDP project management committee member, “IBM is using the eRCP project as the base runtime for IBM's Lotus Expeditor Client for Devices.”

Nokia's Mika Hoikkala added, “Nokia sees the first GA releases of these projects as major progress in combining the power of open source development and commercial products for development in the device market. Though developed in our open source Eclipse project group, the frameworks from MTJ will provide a foundation for Nokia's Carbide.j commercial mobile development tools.”

Availability

Device Software Development Platform releases are available for download now at the DSDP website.

Also available is a getting started with Target Management tutorial, an eRCP resources list, and an MTJ changes and download listing.


 
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.



Comments are closed.