Compiling Core Plugins
This is development entry explaining the how-to behind compiling linuxMCE standard plugins. These plugins represent different functionality that communicates with the core and other devices. The significance of plugins is that they run in the DCERouter memory space, so a non functioning one can cause serious stability issues.
It should be noted that a familiarity with svn and command line compiling arguments is quite helpful in this process.
Contents
The Plugins
- File Grids Plugin
- General info Plugin
- Climate Plugin
- Datagrid Plugin
- Infrared Plugin
- Lighting Plugin
- Orbiter Plugin
- Media Plugin
- Telecom Plugin
- Event Plugin
- Security Plugin
- Plug and Play Plugin
- Xine Plugin
- MythTV Plugin
- Game Plugin
What you Need
To get started on this process, you will need to perform some initial preperation steps.
Subversion and the source
Step one, checkout the source. You will need to perform an svn checkout of the source tree. While that may sound intimidating, its quite simple actually.
- Install subversion via apt-get, i.e. apt-get install subversion
- Perform the subversion checkout of the source tree. In this case, this would be the /src directory. To do this you enter:
svn co http://svn.linuxmce.org/svn/branches/LinuxMCE-0810/src
Now you will have the necessary source to compile plugins, but further steps will be needed.
Other packages and Source
You will also need to install the build-essential package
sudo apt-get install build-essential
You will also need the DCE library objects. To obtain these, copy them from /usr/pluto/lib/ to the /lib directory in your source tree like in the example below:
- cp /usr/pluto/lib/* /mysvncheckoutdir/src/lib
Building the Plugins
Find the directory of the plugin in question.
- You can then type 'make' or if not admin 'sudo make'
- NOTE* needs more detail
This should provide the shared library objects for the plugin. Now you will need to stop the running plugin that correlates to the one you just built, and then copy it into place.
And now you have completed the task of building a plugin from the source!