### Berkeley DB Reference Guide: Building Berkeley DB for VxWorks systems |

# Building for VxWorks

The build_vxworks directory in the Berkeley DB distribution contains a workspace and project files for Tornado 2.0. The Berkeley DB distribution also contains component files for Tornado 3.1/VxWorks AE. See Building for VxWorks AE for information about VxWorks AE.

File | Description
--- | ---
Berkeley DB.wsp | Berkeley DB Workspace file
Berkeley DB.wpj | Berkeley DB Project file
demo/DBdemo.wpj | Demo program project file
db_*/*.wpj | Support utilities project files

### Building With Tornado 2.0

Open the workspace Berkeley DB.wsp. The list of projects in this workspace will be shown. These projects were created for the x86 BSP for VxWorks.

The remainder of this document assumes that you already have a VxWorks target and a target server, both up and running. It also assumes that your VxWorks image is configured properly for your needs. It also assumes that you have an acceptable file system already available. See VxWorks FAQ for more information about file system requirements.

First, you need to set the include directories. To do this, go to the Builds tab for the workspace. Open up Berkeley DB Builds. You will see several different builds, containing different configurations. All of the projects in the Berkeley DB workspace are created to be downloadable applications.

Build | Description
--- | ---
PENTIUM_debug | x86 BSP with debugging
PENTIUM_nodebug | x86 BSP no debugging

You have to add a new build specification if you use a different BSP, want to add a build for the simulator or want to customize further. For instance, if you have the Power PC (PPC) BSP, you need to add a new build for the PPC tool chain. To do so, select the "Builds" tab, select the Berkeley DB project name, and right-click. Choose the New Build... selection and create the new build target. For your new build target, you need to decide whether it should be built for debugging. See the properties of the Pentium builds for ways to configure for each case. After you add this build you, you still need to configure correctly the include directories, as described in the sections that follow.

If you are running with a different BSP, you should remove the build specifications that do not apply to your hardware. We recommend that you do this after you configure any new build specifications first. The Tornado tools will get confused if you have a PENTIUMgnu build specification for a PPC BSP, for instance.

Select the build you are interested in, and right-click. Choose the Properties... selection. At this point, a tabbed dialog should appear. In this new window, choose the C/C++ compiler tab. In the edit box, you need to modify the full pathname of the build_vxworks subdirectory of Berkeley DB, followed by the full pathname of the include and include_auto subdirectories of Berkeley DB. Then, click OK.

Note that some versions of Tornado (such as the version for Windows) do not correctly handle relative pathnames in the include paths. If you get an error about an inability to find header files you should edit the include and include_auto pathnames to remove the build_vxworks/.. relative portion. Then you should rebuild your dependencies.

If the architecture for this new build has the most significant byte first, you also need to edit the db_config.h file in the build directory and define WORDS_BIGENDIAN.

To build and download the Berkeley DB downloadable application for the first time requires several steps:

1. Select the build you are interested in, and right-click. Choose the Set... as Active Build selection.

2. Select the build you are interested in, and right-click. Choose the Dependencies... selection. Run dependencies over all files in the Berkeley DB project.

3. Select the build you are interested in, and right-click. Choose the Rebuild All (Berkeley DB.out) selection.

4. Select the Berkeley DB project name, and right-click. Choose the Download "Berkeley DB.out" selection.

You need to repeat this procedure for all builds you are interested in building, as well as for all of the utility project builds you want to run.

Copyright Sleepycat Software