Cross Compile Player with Gearbox
From The Player Project
Mechatronix (Talk | contribs) |
|||
| (11 intermediate revisions not shown) | |||
| Line 1: | Line 1: | ||
| - | This guide is a follow up of the Cross | + | == Purpose == |
| + | This guide is a follow up of the [[Cross Compile Player with Openembedded and BitBake]] guide. The recipe for builing Gearbox is provided. | ||
To get gearbox working with player you must install gearbox first. So if you already have player installed, delete all player files in your /usr/local directory. | To get gearbox working with player you must install gearbox first. So if you already have player installed, delete all player files in your /usr/local directory. | ||
| - | + | ==Gearbox Recipe== | |
| - | + | <pre> | |
| - | + | DESCRIPTION = "A collection of usable peer-reviewed robotics-related libraries" | |
| - | + | LICENSE = "LGPLv3 and LGPLv2+ and GPLv2+" | |
| - | DESCRIPTION = " | + | |
| - | + | ||
| - | LICENSE = "" | + | |
| - | + | ||
HOMEPAGE = "http://gearbox.sourceforge.net/" | HOMEPAGE = "http://gearbox.sourceforge.net/" | ||
| - | |||
DEPENDS = "" | DEPENDS = "" | ||
| - | + | PN = "gearbox" | |
| + | PV = 9.11 | ||
PR = "r0" | PR = "r0" | ||
| - | + | SRC_URI = "file://gearbox-9.11.tar.gz" | |
| - | SRC_URI = " | + | |
| - | + | ||
| - | + | ||
S="${WORKDIR}/gearbox-9.11" | S="${WORKDIR}/gearbox-9.11" | ||
| - | |||
inherit autotools pkgconfig | inherit autotools pkgconfig | ||
| - | |||
do_configure () { | do_configure () { | ||
| - | cmake -DENABLE_LIB_BASICEXAMPLE=OFF -DENABLE_LIB_FLEXIPORT=OFF -DENABLE_LIB_GBXADVANCEDEXAMPLE=OFF -DENABLE_LIB_GBXGARMINACFR=OFF -DENABLE_LIB_GBXICEUTILACFR=OFF -DENABLE_LIB_GBXNOVATELACFR=OFF -DENABLE_LIB_GBXSERIALACFR=OFF -DENABLE_LIB_GBXSICKACFR=OFF -DENABLE_LIB_GBXSMARTBATTERYACFR=OFF -DENABLE_LIB_GBXUTILACFR=OFF -DENABLE_LIB_HOKUYO_AIST=OFF | + | cmake -DENABLE_LIB_BASICEXAMPLE=OFF -DENABLE_LIB_FLEXIPORT=OFF -DENABLE_LIB_GBXADVANCEDEXAMPLE=OFF \ |
| - | + | -DENABLE_LIB_GBXGARMINACFR=OFF -DENABLE_LIB_GBXICEUTILACFR=OFF -DENABLE_LIB_GBXNOVATELACFR=OFF \ | |
| + | -DENABLE_LIB_GBXSERIALACFR=OFF -DENABLE_LIB_GBXSICKACFR=OFF -DENABLE_LIB_GBXSMARTBATTERYACFR=OFF \ | ||
| + | -DENABLE_LIB_GBXUTILACFR=OFF -DENABLE_LIB_HOKUYO_AIST=OFF . | ||
} | } | ||
| Line 37: | Line 31: | ||
do_install() { | do_install() { | ||
| - | |||
oe_runmake install DESTDIR=${D} | oe_runmake install DESTDIR=${D} | ||
| + | |||
} | } | ||
| - | FILES_${PN} = "/usr | + | FILES_${PN} = "/usr/lib/* \ |
| - | /usr | + | /usr/include/* \ |
| - | /usr | + | /usr/share/* \ |
" | " | ||
| - | + | </pre> | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | This recipe uses a local source tarball, instead of retreiving it from the web. You can edit the SOURCE_URI to point to the Gearbox svn repository by following the documentation on the [http://docs.openembedded.org/usermanual/html/src_uri_variable.html OpenEmbedded manual]. Otherwise, download the gearbox-9.11 tarball from the project's sourceforge page, and put it in the same directory as the "gearbox.bb" recipe. | |
| + | Note that autotools is now inherited. autotools is very important as it installs the pkgconfig files to the staging directory so that when you install player afterwords, player can find the drivers. | ||
| - | + | To enable more of the features, add the appropriate DEPENDS and change the options in the CMake section. For further explanation on the recipe refer to the [[Cross Compile Player with Openembedded and BitBake | Player Recipe]] | |
| + | Once you have installed and packaged gearbox, edit the [[Cross Compile Player with Openembedded and BitBake | Player Recipe]] and add gearbox to Player's DEPENDS section. Then, edit Player's CMake commands to the relevant drivers turned on. From there, you can install the Player and Gearbox packages on your embedded machine. | ||
| - | + | [[Category:Documentation]] | |
| + | [[Category:Tutorials]] | ||
Latest revision as of 00:05, 31 January 2011
Purpose
This guide is a follow up of the Cross Compile Player with Openembedded and BitBake guide. The recipe for builing Gearbox is provided.
To get gearbox working with player you must install gearbox first. So if you already have player installed, delete all player files in your /usr/local directory.
Gearbox Recipe
DESCRIPTION = "A collection of usable peer-reviewed robotics-related libraries"
LICENSE = "LGPLv3 and LGPLv2+ and GPLv2+"
HOMEPAGE = "http://gearbox.sourceforge.net/"
DEPENDS = ""
PN = "gearbox"
PV = 9.11
PR = "r0"
SRC_URI = "file://gearbox-9.11.tar.gz"
S="${WORKDIR}/gearbox-9.11"
inherit autotools pkgconfig
do_configure () {
cmake -DENABLE_LIB_BASICEXAMPLE=OFF -DENABLE_LIB_FLEXIPORT=OFF -DENABLE_LIB_GBXADVANCEDEXAMPLE=OFF \
-DENABLE_LIB_GBXGARMINACFR=OFF -DENABLE_LIB_GBXICEUTILACFR=OFF -DENABLE_LIB_GBXNOVATELACFR=OFF \
-DENABLE_LIB_GBXSERIALACFR=OFF -DENABLE_LIB_GBXSICKACFR=OFF -DENABLE_LIB_GBXSMARTBATTERYACFR=OFF \
-DENABLE_LIB_GBXUTILACFR=OFF -DENABLE_LIB_HOKUYO_AIST=OFF .
}
do_compile() {
oe_runmake
}
do_install() {
oe_runmake install DESTDIR=${D}
}
FILES_${PN} = "/usr/lib/* \
/usr/include/* \
/usr/share/* \
"
This recipe uses a local source tarball, instead of retreiving it from the web. You can edit the SOURCE_URI to point to the Gearbox svn repository by following the documentation on the OpenEmbedded manual. Otherwise, download the gearbox-9.11 tarball from the project's sourceforge page, and put it in the same directory as the "gearbox.bb" recipe.
Note that autotools is now inherited. autotools is very important as it installs the pkgconfig files to the staging directory so that when you install player afterwords, player can find the drivers.
To enable more of the features, add the appropriate DEPENDS and change the options in the CMake section. For further explanation on the recipe refer to the Player Recipe
Once you have installed and packaged gearbox, edit the Player Recipe and add gearbox to Player's DEPENDS section. Then, edit Player's CMake commands to the relevant drivers turned on. From there, you can install the Player and Gearbox packages on your embedded machine.