-
Notifications
You must be signed in to change notification settings - Fork 0
IDE Build Environment for Android Studio
This page discusses how to build the Magic Lantern IDE for Android titles using Eclipse and Ant.
[TOC]
This section identifies dependencies for building the Magic Lantern IDE.
- 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.
- Eclipse for RCP/Plug-in Developers, version 3.7 (or later)
- Apache Ant, version 1.8.0
- Oracle Java Development Kit (JDK), version 1.6.0_16
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
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".
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 ('/').
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/).
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 |
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.
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 | "$MLE_HOME\lib\tools" | Magic Lantern Studio (Floating-point Release) |
mlmathd.lib | "$MLE_HOME\lib\tools" | Magic Lantern Studio (Floating-point Debug) |
These libraries are required by the Digital Workprint Reader below.
These instructions build the Digital Workprint libraries for the Magic Lantern Studio tools.
- Visual Studio 2005 Solution: "$MLE_HOME\DigitalWorkprint\lib\win32\build\msvc8\DWPAccess.sln"
- Visual Studio v6.0 Workspace: "$MLE_HOME\DigitalWorkprint\lib\win32\build\msvc6\DWPAccess.dsw" (Obsolete)
The library components that are built for the Magic Lantern Studio include
Library | Directory Location | Component |
---|---|---|
DWPBase.lib | "$MLE_HOME\lib\tools" | DWP Base library, Magic Lantern Studio (Release) |
DWPBased.lib | "$MLE_HOME\lib\tools" | DWP Base library, Magic Lantern Studio (Debug) |
DWPType.lib | "$MLE_HOME\lib\tools" | DWP Type library, Magic Lantern Studio (Release) |
DWPTyped.lib | "$MLE_HOME\lib\tools" | DWP Type library, Magic Lantern Studio (Debug) |
DWPModel.lib | "$MLE_HOME\lib\tools" | DWP Model library, Magic Lantern Studio (Release) |
DWPModeld.lib | "$MLE_HOME\lib\tools" | DWP Model library, Magic Lantern Studio (Debug) |
DWP.lib | "$MLE_HOME\lib\tools" | DWP SDK library, Magic Lantern Studio (Release) In VC6 build, this library contains the DWPBase.lib, DWPType.lib, DWPModel.lib Release libraries |
DWPd.lib | "$MLE_HOME\lib\tools" | DWP SDK library, Magic Lantern Studio (Debug) In VC6 build, this library contains the DWPBased.lib, DWPTyped.lib, DWPModeld.lib Debug libraries |
The executable components that are built for the Magic Lantern SDK include
Executable | Directory Location | Component |
---|---|---|
DWPChecker.exe | "$MLE_HOME\bin" | DWP Validation tool, Magic Lantern Studio (Release) |
These libraries are required by the Digital Workprint Reader below.
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) |
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:
- From the main Eclipse toolbar, select the "File->Import..." menu entry. This will display the Import dialog.
- Select the "Existing Projects into Workspace" entry found under the General category.
- Select the "Next>" button in the Import dialog. The dialog should now be displaying the "Import Projects" page.
- Select a directory to search for existing Eclipse projects. Use the the "Browse..." button.
- 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.
- 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.
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:
- 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.
- Select the "Next>" button which will display the "JAR Packaging Options" dialog page.
- Deselect the "Save the description of this JAR in the workspace" button.
- Select the "Finish" button. The corresponding component JAR will be generated and placed in $MLE_HOME/lib/android-10.
This section describes how to use the Ant build scripts to build the Magic Lantern IDE for the Android Platform.
Building Android outside Eclipse involves using the command line or shell.
Make sure that the "tools" and "platform-tools" folder of the Android SDK installation directory are part of your PATH environment variable.
The Eclipse project generation wizard does not create the required Apache Ant build.xml file. You can generate it from the command line.
To create the Ant build.xml script for the following Magic Lantern projects:
com.wizzer.mle.math
- cd $MLE_HOME/Core/math/android/com.wizzer.mle.math
- execute "android update project --path ."
com.wizzer.mle.runtime
- cd $MLE_HOME/Core/mlert/android/com.wizzer.mle.runtime
- execute "android update project --path ."
com.wizzer.mle.parts
- cd $MLE_HOME/Parts/base/android/com.wizzer.mle.parts
- execute "android update project --path ."
Copyright (c) 2019-2024 Wizzer Works All rights reserved.
Contents
- User Home Page
-
Developer Home Page
- SDK Build Environment using Microsoft Visual Studio
- SDK Build Environment using Microsoft MSBuild
- SDK Build Environment for Linux Platform
- SDK Build Environment for Qt Linux Platform
- SDK Build Environment for J2SE Platform
- SDK Build Environment for Android Platform
- Rehearsal Player Build Environment using Microsoft Visual Studio
- Rehearsal Player Build Environment for Linux Platform