CBE SW Build Instructions

Pokorny

Here are the build instructions for CBE software. All build/run pre-requisites are checked by the configure script.

  • svn co xxxxxxxxxxxxxx
  • ./bootstrap
  • ./configure
  • make
  • make install

The configure script will check for various libraries required to build and run the cbe software. cbe-control has all of these libraries (and header files) installed under /home/cbe-control/local, so it's easiest to build the s/w on cbe-control. Useful options to the "configure" command (these are standard "configure" options):

  • --prefix
  • --sysconfdir

N.B.: this configure/compile/install procedure describes a general method. For more information about the installed CBE software in the WIDAR production environment, see CBE Rollback.

Example:

  • ./configure PKG_CONFIG_PATH=/home/cbe-control/local/lib/pkgconfig CFLAGS="-O3 -g -Wall -Werror" CC=mpicc --prefix=/opt/cbe-local/wcbe-daily/stow/wcbe_test --sysconfdir=/etc/sysconfig
    • (PKG_CONFIG_PATH above ensures that the correct libraries are used.)

Hints:
  • "make -j 8" on cbe-control really speeds things up
  • "make -i install" avoids failures when installing as non-root user
  • Set the CC variable to mpicc to use the MPI compiler header files and libraries.

Configuration:
  • Running the cbe software depends on certain configuration options. Several "pre-packaged" configurations are available on cbe-control; these are named "daily", "weekly" and "test". The production environment is "daily".
  • Much of the software can be run by any user; however, to start and stop some of the cbe services, the effective user must be able to ssh to wcbe@cbe-control, preferably without being prompted for a password (see ssh-agent(1) for hints).
  • Required environment variables can be set by using wcbe_env (on cbe-control only).
    • Examples:
      • eval `wcbe_env -s` # set up normal production environment in bash shell
      • eval `wcbe_env -c` # set up normal production environment in c-style shell
      • eval `wcbe_env -s test` # set up test environment in bash shell -- you probably don't want to do this!
  • The set of available cbe nodes (actually, NIC addresses) is controlled by the file /etc/sysconfig/wcbe_lfx_[environment].conf (where "lfx" stands for "lag frame interface"); for example /etc/sysconfig/wcbe_lfx_daily.conf. This file only defines the set of available cbe interfaces; a user can employ any subset of these interfaces through the wcbetool commands, as desired.
  • Because of recent problems with some of the cbe nodes, it has become common practice to edit the mpd.hosts file under ~wcbe. While useful for the time being, In general, this is not recommended.

-- MartinPokorny - 02 Jul 2010

This topic: EVLA > WebHome > EVLACommissioning > EVLASoftwareVersioning > CBEBuild
Topic revision: 2010-07-02, mpokorny
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding NRAO Public Wiki? Send feedback