Since RuleBase does not run on many platforms (yet anyway) I'll not
be working on a configure script, so a few manual changes to the
Makefile will be necessary and problems may be expected  :)

To start with you'll need the following tools and APIs:

To download the APIs from Novas, you'll need to get a password from
your Novas software support contact.  Both packages are in the api
directory of the OEM Downloads section.


To start with install g++, perl, and swig. These are fairly standard pieces of equipment for any system (except maybe Swig) so if you need help you'll have to follow the instructions on the site for the tools that are listed above. First CD to the rb2fsdb directory and make two directories named "FsdbWriter" and "libcmd". Then download the API tarballs from Novas into the corresponding directory (or mv/cp the files there if you downloaded to a different spot like your home directory in the example below): cd rb2fsdb mkdir FsdbWriter mkdir libcmd mv ~/FsdbWriter*.tar.gz ./FsdbWriter mv ~/libcmd*.tar.gz ./libcmd Next unzip/untar both the APIs: cd FsdbWriter tar -xvzf FsdbWriter*.tar.gz cd ../libcmd tar -xvzf libcmd*.tar.gz cd ../ Or for the GNU tar challenged: cd FsdbWriter gunzip FsdbWriter*.tar.gz tar -xvf FsdbWriter*.tar cd ../libcmd gunzip libcmd*.tar.gz tar -xvf libcmd*.tar cd ../ Now that all of software is installed you need to edit the Makefile to make sure everything is correct. Open Makefile in your favorite text editor and edit the values of the following variables to fit your platform: swigincdir - This is the path to the include files for the SWIG wrappers that are generated. Specifically EXTERN.h perl.h, and XSUB.h. Your path should probably be very similar to the default value, perhaps with sun4-solaris changed to your platform. api_arch - This is the architecture abbreviation used by the Novas APIs to divide up their libraries. You can see the choices by doing an ls in either the FsdbWriter or libcmd directories. But since RuleBase only runs on a couple platforms, it's probably not useful to set this to anything other than SOL2 or IBM43 (I have not checked IBM43 functionality). fsdbdir - This is the path to the FsdbWriter package you installed. If you followed the directions above you can leave this value alone. Otherwise change it to the path to the toplevel directory where you unpacked FsdbWriter. libcmddir - Same as fsdbdir but for the libcmd package. See above. INSTALL_DIR - The location where the script and accompanying libraries will be installed. This can actually be anywhere you want (since I'll be setting an ENV variable shortly), but I suggest putting it in a directory along with RuleBase to keep things tidy. Also please make sure the directory exists or the make install (which is very stupid) will not work correctly. That's it for the Makefile. One last thing before building, edit the rb2fsdb.pl script and make sure the first line points to the correct location of the perl binary (try `which perl` to find out). Leave the "#!" at the beginning of the line, this is very important ;) Finally try building the package, and if you don't see any errors, then install it: make make install If everything went according to plan, you have a new script that is ready to process the output of RuleBase and load it up in Debussy for you. The last thing I have to do is tell RuleBase about this script so at the command line or in a startup script (ie .cshrc or .bashrc) set the RB_SCOPE environmental variable to the path of the rb2fsdb.pl script. This will be the same as the INSTALL_DIR path you put into Makefile with "/rb2fsdb.pl" slapped on the end. You set this variable like this: with bash shells(example): export RB_SCOPE=/usr/local/tools/rulebase/v1.3/lib/rb2fsdb.pl or tcsh/csh shells(example): setenv RB_SCOPE /usr/local/tools/rulebase/v1.3/lib/rb2vcd.pl Now that the RB_SCOPE var is set you should be able to load up RuleBase, open a waveform (ie "show timing diagram", etc...) and a Debussy nWave window should pop up with the appropriate wave in it and all the same signals you'd expect from RuleBase's wave viewer are already added to the display. You can leave the nWave window open and next time you open a waveform through RuleBase it will Refresh in nWave. Be careful of the bug below however...
SourceForge Logo

Weston Sewell
Last modified: Fri Feb 22 02:31:30 CST 2002