Difference between revisions of "WOCE Build Instructions"

From WebOS-Ports
Jump to navigation Jump to search
Line 5: Line 5:
 
Older versions of Ubuntu may also work, it's been tested successfully on Ubuntu 10.10. It's also very likely that you'll have success with Debian or Debian-based distributions.
 
Older versions of Ubuntu may also work, it's been tested successfully on Ubuntu 10.10. It's also very likely that you'll have success with Debian or Debian-based distributions.
  
'''''We reccomend you follow the instructions to install [[woce-be]]. continue at your own risk!'''''
+
''''''We reccomend you follow the instructions to install [[woce-be]]. continue at your own risk!''''''
  
 
==Prerequisites on Debian-based systems==
 
==Prerequisites on Debian-based systems==

Revision as of 07:27, 13 July 2012

Supported Platforms

Currently the only supported platform is Ubuntu 12.04. We have tested and confirmed that x32 and x64 Ubuntu Desktop and Server successfully build WOCE. Other platforms may work but are not supported.

Older versions of Ubuntu may also work, it's been tested successfully on Ubuntu 10.10. It's also very likely that you'll have success with Debian or Debian-based distributions.

'We reccomend you follow the instructions to install woce-be. continue at your own risk!'

Prerequisites on Debian-based systems

Your Debian/Ubuntu installation will need the following installed. If you do not have them, run the command after the package name. You can test if they are found by just typing the command name. If it says command not found, you need to install it.

git sudo apt-get install git
gcc sudo apt-get install build-essential
python sudo apt-get install python
curl sudo apt-get install curl
unzip sudo apt-get install unzip

If you're uncertain at all, just cut and paste the following. If some of these packages are already installed and up-to-date, they'll be skipped.

sudo apt-get install git build-essential python curl unzip

Note: If you are a beginner with Ubuntu Linux Distribution, you should update all the packages on your system to avoid problems when you will compile.

Note: If you are using x64 ubuntu you also need to install the following package

ia32-libs and g++-multilib sudo apt-get install ia32-libs g++-multilib

Start setup

  • Create a WOCE directory, we recommend you place it in your home directory.
  • Clone down the woce-build repo from github
git clone git://www.github.com/woce/woce-build
  • Start the build. This is as simple as cd'ing into the woce-build directory and running make or if you have multiple cores make -j<number of cores here>
  • When the build finishes the binaries will be under the packages folder in their appropriate directories (e.g. LunaSysMgr in ./packages/sysmgr/luna-sysmgr/build/woce/armv7-stage/release-topaz/LunaSysMgr)

Installing the Binaries

  • Install the SDK/PDK
  • Enable 'Developer Mode' on your TouchPad (How To Enable Developer Mode)
  • Connect your TouchPad via USB to your (Linux) computer
  • From your TouchPad, when the connection is detected, just tap 'Close' in the notification window.

From your (Linux) computer, execute the following commands - take note that there is an assumption of where the new LunaSysMgr is at:

novacom run -- file:///sbin/stop LunaSysMgr
novacom run file://bin/mount -- -o remount,rw /
novacom put file:///usr/bin/LunaSysMgr < ./packages/sysmgr/luna-sysmgr/build/woce/armv7-stage/release-topaz/LunaSysMgr
novacom run file://bin/mount -- -o remount,ro /
novacom run -- file:///sbin/start LunaSysMgr

Done!

You're done! Your very own LunaSysMgr should now start on your TouchPad.

Don't forget to join the IRC channel #webos-ports on Freenode and report any issues to WebOS Port's bugtracker. Oh, and contribute your code changes!

Developer Extras

  • Follow the instructions above to ensure you have the needed software and that the build works for you as-is.
  • Clone a copy of LunaSysMgr somewhere for your development pleasure
  • Edit config/custom.mk:
    • Remove the error and warning lines as indicated
    • Change LUNASYSMGR_URL to point to your LunaSysMgr source tree
  • run 'make custom' ('make custom -j8' or similar) to build LunaSysMgr from your source tree. If you change a source file, another 'make custom' will rebuild only what's needed.
  • Test your new feature(s) and submit pull requests to webos-ports/LunaSysMgr! :)