Jump to: navigation, search

How to build eSWT for WM 5/WM 6 Pro/WM 6 STD/Win32

Revision as of 23:18, 4 November 2008 by Locl.tw.ibm.com (Talk | contribs)

Section 1: Prerequisite

  • Install Visual Studio 2003 or Visual Studio 2005 for Windows Mobile DLL compiling
  • Install Required SDK for different platforms
    • Install Windows Mobile 5 SDK for Windows Mobile 5 devices
    • Install Windows Mobile 6 Professional SDK for Windows Mobile 6 Professional devices
    • Install Windows Mobile 6 Standard SDK for Window Mobile 6 Standard devices
    • Install DirectX SDK for Windows related platforms (DirectX 2007 August SDK is recommended for Windows XP)
  • Install Java 2 SDK, such as IBM Java SDK or Sun Java SDK
  • Checkout following eSWT source projects from dev.eclipse.org -> /cvsroot/dsdp repository
    • org.eclipse.ercp.swt.core.win
    • org.eclipse.ercp.swt.expanded.win
    • org.eclipse.ercp.swt.mobile.win
  • Checkout required build project from dev.eclipse.org -> /cvsroot/dsdp repository
    • org.eclipse.ercp.swt.wm6pro for Windows Mobile 5, Windows Mobile 6 Professional or Windows Mobile 6 Standard
    • org.eclipse.ercp.swt.win32 for Windows related platforms
  • Developer should have Java JNI tool including jniport.h and jni.h for compiling native DLL.


Section 2: Steps of How to Resovle the Errors in org.eclipse.ercp.swt.core(expanded|mobile).win

  • Right click org.eclipse.ercp.swt.core.win in your IDE
  • Click Propertis
  • Click Java Build Path
  • Click Libraries
  • Remove all default jar/lib path
  • Click Add Library
  • Choose JRE System Library
  • Click Next and Point to the Device JRE
  • Then we should resolve the errors in the project
  • Do the same steps for expanded.win and mobile.win to resolve the errors


Section 3: Steps of How to build eswt-converge.dll

  • Go to ~\workspace\org.eclipse.ercp.swt.{platform}\converged_dll

Converged dll folder.JPG

  • Double click eswt-converged.sln
  • Visual Studio will bring up
  • Right click ugl_wince_port in right panel

Ugl wince port properties.JPG

  • Click Properties, it will bring up the property page

Ugl wince port propertiespage.JPG

  • Expand C/C++
  • Click General
  • Click the scroll-down button of the Additional Include Diectories, it will bring up the Additional Include Directories page

Additional Include Directories Page.JPG

  • Click New Line, it will generate a new entry
  • Click the scroll-down button on the right hand side again
  • Point to the folder which jniport.h and jni.h resides

Additional Include Directories Page NewEntry.JPG

  • Click OK and save this configuration
  • Choose the corresponding platform SDK on top-center scroll-down menu
  • Choose Release mode of top-left-center scroll-down menu

Release SDK.JPG

  • Click Build-->Builds Solution

Build.JPG

  • Then you can build eswt-converge.dll successfully which resides in ~\workspace\org.eclipse.ercp.swt.wm6pro\os\win32\arm


Section 4: Steps of How to seperately build eswt-core.dll and eswt-core.jar

  • Go to ~\workspace\org.eclipse.ercp.swt.core.win\build\vs.net
  • Double click ugl-win32.sln
  • Visual Studio will bring up
  • Be sure that we should do step 4 to step 12 of Section 2 to ensure that we have included jniport.h and jni.h in the Additional Include Directories Page if we have not done these steps before
  • Choose the corresponding platform SDK on top-center scroll-down menu
  • Choose Release mode of top-left-center scroll-down menu
  • Click Build-->Builds Solution
  • Then you can build eswt-core.dll successfully which resides in ~\workspace\org.eclipse.ercp.swt.core.win\build\vs.net\{Platform SDK name}\{Configuration name}\
  • EX: if you use Windows Mobile 6 Professional SDK and Release mode to build, then
    • {Platform SDK name} = Windows Mobile 6 Professional SDK (ARMV4I)
    • {Configuration name} = Release
  • Go to your IDE
  • Right Click org.eclipse.ercp.swt.core.win
  • Click Export
  • Expand Java
  • Highlight JAR file
  • Click Next
  • Name it as eswt-core.jar
  • Click Finish and you successfully get eswt-core.jar


Section 5: Steps of How to seperately build eswt-exp.dll and eswt-exp.jar

  • Go to ~\workspace\org.eclipse.ercp.swt.expanded.win\build\vs.net
  • Double click ugl-win32.sln
  • Visual Studio will bring up
  • Be sure that we should do step 4 to step 12 of Section 2 to ensure that we have included jniport.h and jni.h in the Additional Include Directories Page if we have not done these steps before
  • Choose the corresponding platform SDK on top-center scroll-down menu
  • Choose Release mode of top-left-center scroll-down menu
  • Click Build-->Builds Solution
  • Then you can build eswt-exp.dll successfully which resides in ~\workspace\org.eclipse.ercp.swt.expanded.win\build\vs.net\{Platform SDK name}\{Configuration name}\
  • EX: if you use Windows Mobile 6 Professional SDK and Release mode to build, then
    • {Platform SDK name} = Windows Mobile 6 Professional SDK (ARMV4I)
    • {Configuration name} = Release
  • Go to your IDE
  • Right Click org.eclipse.ercp.swt.expanded.win
  • Click Export
  • Expand Java
  • Highlight JAR file
  • Click Next
  • Name it as eswt-exp.jar
  • Click Finish and you successfully export eswt-exp.jar

Section 6: Steps of How to seperately build mobile.dll and eswt-mobile.jar

  • Go to ~\workspace\org.eclipse.ercp.swt.mobile.win\build\vs.net
  • Double click mobile.sln
  • Visual Studio will bring up
  • Be sure that we should do step 4 to step 12 of Section 2 to ensure that we have included jniport.h and jni.h in the Additional Include Directories Page if we have not done these steps before
  • Choose the corresponding platform SDK on top-center scroll-down menu
  • Choose Release mode of top-left-center scroll-down menu
  • Click Build-->Builds Solution
  • Then you can build mobile.dll successfully which resides in ~\workspace\org.eclipse.ercp.swt.mobile.win\build\vs.net\{Platform SDK name}\{Configuration name}\
  • EX: if you use Windows Mobile 6 Professional SDK and Release mode to build, then
    • {Platform SDK name} = Windows Mobile 6 Professional SDK (ARMV4I)
    • {Configuration name} = Release
  • Go to your IDE
  • Right Click org.eclipse.ercp.swt.mobile.win
  • Click Export
  • Expand Java
  • Highlight JAR file
  • Click Next
  • Name it as eswt-mobile.jar
  • Click Finish and you successfully export eswt-mobile.jar

Section 7: Steps of How to build eswt-converge.jar

  • This required Java SDK to build and here I install this SDK as following C:\Program Files\IBM\Java142\
  • Modify the env.ini under ~\workspace\org.eclipse.ercp.swt.{platform}\converged_jar folder
    • JAVA_COMPILER=C:\Program Files\IBM\Java142\bin\javac.exe
    • JAVA_ARCHIVE=C:\Program Files\IBM\Java142\bin\jar.exe
  • Double click main.bat
  • Then you can build eswt-converge.jar successfully which resides in ~\workspace\org.eclipse.ercp.swt.wm6pro\ws\win32\