Menu

IDE_Build_Environment_for_Android_Studio

There is a newer version of this page. You can find it here.

This page discusses how to build the Magic Lantern IDE for Android titles using Eclipse and Ant.

Dependencies

This section identifies dependencies for building the Magic Lantern IDE.

  1. Microsoft Visual Studio C++ v6.0 is installed with Service Pack 6 applied or Microsoft Visual Studio 2005 is installed with Service Pack 2 applied.
  2. Eclipse for RCP/Plug-in Developers, version 3.7 (or later)
  3. Apache Ant, version 1.8.0
  4. Oracle Java Development Kit (JDK), version 1.6.0_16

Assumptions

These instructions assume the following

  • The dependencies above are installed under a Windows drive labeled "M" (e.g. M:).
  • The Magic Lantern software has been downloaded into the "M:\projects\MagicLantern" directory and the MLE_HOME environment variable is set to "M:\projects\MagicLantern".
  • You already know how to use the Eclipse IDE
  • You already know how to create and use Ant build scripts

Environment Variables

MLE_HOME Environment Variable

Set the variable MLE_HOME to reference the home of the Magic Lantern source. This document assumes that it is set to "M:\projects\MagicLantern".

MLE_ROOT Environment Variable

Set the variable MLE_ROOT to reference the root directory where the Magic Lantern components will be installed. This document assumes that it is set to "M:/projects/MagicLantern".

Note that this variable uses the UNIX-style path delimiter ('/').

MLE_WORKPRINTS Environment Variable

Set the variable MLE_WORKPRINTS to the root directory where Magic Lantern Digital Workprints can be located. This document assumes that it is set to //M/projects/MagicLantern.

The Magic Lantern Studio assumes that the Digital Workprints will be located under the $MLE_WORKPRINTS/workprints directory.

Note that this variable uses a canonical path style for the drive (i.e. //M/).

Details

This section discusses how to build the Magic Lantern IDE components targeting the Android platform. The Magic Lantern IDE is comprised of the following components:

Component Description Location

com.wizzer.mle.runtime
The Magic Lantern Runtime Engine
$(MLE_HOME)\Core\mlert\android\com.wizzer.mle.runtime

com.wizzer.mle.math
The Magic Lantern Math Library
$(MLE_HOME)\Core\math\android\com.wizzer.mle.math

com.wizzer.mle.parts
The Magic Lantern Core Parts Library
$(MLE_HOME)\Parts\base\android\com.wizzer.mle.parts

com.wizzer.mle.parts.actors
The Magic Lantern Core Actor Library
$(MLE_HOME)\Parts\actors\android\com.wizzer.mle.parts.actors

com.wizzer.mle.parts.props
The Magic Lantern Core Property Library
$(MLE_HOME)\Parts\props\android\com.wizzer.mle.parts.props

com.wizzer.mle.parts.roles
The Magic Lantern Core Role Library
$(MLE_HOME)\Parts\roles\android\com.wizzer.mle.parts.j2d

com.wizzer.mle.parts.mrefs
The Magic Lantern Core Media Reference Library
$(MLE_HOME)\Parts\mediaref\android\com.wizzer.mle.parts.mrefs

com.wizzer.mle.parts.sets
The Magic Lantern Core Set Library
$(MLE_HOME)\Parts\sets\android\com.wizzer.mle.parts.sets

com.wizzer.mle.parts.stages
The Magic Lantern Core Stage Library
$(MLE_HOME)\Parts\stages\android\com.wizzer.mle.parts.stages

com.wizzer.mle.codegen
The Magic Lantern Code Generation Plug-in
$(MLE_HOME)\tools\java\com.wizzer.mle.codegen

com.wizzer.mle.studio
The Magic Lantern Core Studio Plug-in
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio

com.wizzer.mle.studio.framework
The Magic Lantern Utility Framework Plug-in
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.framework

com.wizzer.mle.studio.dwp
The Magic Lantern Digital Workprint Plug-in
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.dwp

com.wizzer.mle.studio.dpp
The Magic Lantern Digital Playprint Plug-in
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.dpp

com.wizzer.mle.studio.branding
The Magic Lantern Branding Plug-in
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.branding

com.wizzer.mle.studio.android
The Magic Lantern Core Android Plug-in
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.android

com.wizzer.mle.studio.android.help
The Magic Lantern Android Help Plug-in
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.android.help

com.wizzer.mle.studio.android.branding
The Magic Lantern Android Branding Plug-in
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.android.branding

com.wizzer.mle.studio.feature
The Magic Lantern Core Feature
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.feature

com.wizzer.mle.studio.android.feature
The Magic Lantern Android Feature
$(MLE_HOME)\Studio\plugins\com.wizzer.mle.studio.android.feature


Build the Core util Library for Tools

These instructions build the Core util libraries for the Magic Lantern Studio tools.

  • Visual Studio 2005 Solution : "$MLE_HOME\Core\util\win32\build\msvc8\mleutil.sln"
  • Visual Studio v6.0 Workspace: "$MLE_HOME\Core\util\win32\build\msvc6\MleUtil.dsw" (Obsolete)

The library components that are built include

Library Directory Location Component

util.lib
"$MLE_HOME\lib\tools"
Magic Lantern Studio (Release)

utild.lib
"$MLE_HOME\lib\tools"
Magic Lantern Studio (Debug)

These libraries are required by the Digital Workprint Reader below.


Build the Core math Libraries

These instructions build the Core math libraries for the Magic Lantern Studio tools.

  • Visual Studio 2005 Solution: "$MLE_HOME\Core\math\win32\build\msvc8\mlmath.sln"
  • Visual Studio v6.0 Workspace: "$MLE_HOME\Core\math\win32\build\msvc6\mlmath.dsw" (Obsolete)

The library components that are built for the Magic Lantern Studio include

Library Directory Location Component

mlmath.lib
mlmath.lib
"$MLE_HOME\lib\runtime\cdecl"
"$MLE_HOME\lib\tools"
Magic Lantern Studio (Floating-point Release)

mlmathd.lib
mlmathd.lib
"$MLE_HOME\lib\runtime\cdecl"
"$MLE_HOME\lib\tools"
Magic Lantern Studio (Floating-point Debug)

These libraries are required by the Digital Workprint Reader below.


** Build Digital Workprint Reader**

This section describes how to build the native, DWP Reader component used by the Android Studio.

  • Visual Studio 2005 Solution: "$MLE_HOME\Studio\plugins\com.wizzer.mle.studio.dwp\src\win32\build\msvc8\JavaDWP.sln"
  • Visual Studio v6.0 Workspace: "$MLE_HOME\Studio\plugins\com.wizzer.mle.studio.dwp\src\win32\build\msvc6\JavaDWP.dsw"

The library of components that are built include

Executable Directory Location Component

DwpReader.dll
"$MLE_HOME\Studio\plugins\com.wizzer.mle.studio.dwp\os\win32\x86"
Magic Lantern Digital Workprint Reader (Release)


Build Plugins for Eclipse IDE

This section describes how to use Eclipse to build the Magic Lantern IDE for the Android Platform.

Each component provides an Eclipse project to facilitate building the component in Eclipse. To build a component, use the following instructions:

  1. From the main Eclipse toolbar, select the "File->Import..." menu entry. This will display the Import dialog.
  2. Select the "Existing Projects into Workspace" entry found under the General category.
  3. Select the "Next>" button in the Import dialog. The dialog should now be displaying the "Import Projects" page.
  4. Select a directory to search for existing Eclipse projects. Use the the "Browse..." button.
  5. The "Projects:" widget should now be showing you list of existing projects that are rooted in the directory specified in the above step. Select the project(s) of interest.
  6. To wrap-up the import, select Finish. The project will now be added to your Eclipse Workspace.

By default, Eclipse will build the component when the project is imported.


Build Android Runtime Engine Libraries

This section describes how to build the Android libraries for the Runtime Engine and title parts.

The library of components that are built include

Library Component Directory Location Jar Description File

com.wizzer.mle.runtime
Core Runtime Engine Library
$MLE_HOME\Core\mlert\android\com.wizzer.mle.runtime
mlert.jardesc

com.wizzer.mle.math
Math Runtime Engine Library
$MLE_HOME\Core\math\android\com.wizzer.mle.math
mlmath.jardesc

com.wizzer.mle.parts
Parts Runtime Engine Library
$MLE_HOME\Parts\base\android\com.wizzer.mle.parts
parts.jardesc

com.wizzer.mle.parts.actors
Actors Runtime Engine Library
$MLE_HOME\Parts\actors\android\com.wizzer.mle.parts.actors
actors.jardesc

com.wizzer.mle.parts.mrefs
Media Reference Runtime Engine Library
$MLE_HOME\Parts\mrefs\android\com.wizzer.mle.parts.mrefs
mrefs.jardesc

com.wizzer.mle.parts.props
Properties Runtime Engine Library
$MLE_HOME\Parts\props\android\com.wizzer.mle.parts.props
props.jardesc

com.wizzer.mle.parts.roles
Roles Runtime Engine Library
$MLE_HOME\Parts\roles\android\com.wizzer.mle.parts.roles
roles.jardesc

com.wizzer.mle.parts.sets
Sets Runtime Engine Library
$MLE_HOME\Parts\sets\android\com.wizzer.mle.parts.sets
sets.jardesc

com.wizzer.mle.parts.stages
Stages Runtime Engine Library
$MLE_HOME\Parts\stages\android\com.wizzer.mle.partsstages
stages.jardesc

To build the Java archive, JAR, file for each component, do the following:

  1. In Eclipse, open the Jar Description File (e.g. mlmath.jardesc) for the corresponding component by double-clicking on the resource in the Package Explorer view. This will bring up the "JAR Export" wizard.
  2. Select the "Next>" button which will display the "JAR Packaging Options" dialog page.
  3. Deselect the "Save the description of this JAR in the workspace" button.
  4. Select the "Finish" button. The corresponding component JAR will be generated and placed in $MLE_HOME/lib/android-10.

Ant Build Environment

This section describes how to use the Ant build scripts to build the Magic Lantern IDE for the J2SE Platform.


Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.