109 lines
2.9 KiB
Plaintext
109 lines
2.9 KiB
Plaintext
|
******************************************************************************
|
||
|
*
|
||
|
* README.build-scripts
|
||
|
*
|
||
|
* Author: Robert Story <rstory@freesnmp.com>
|
||
|
*
|
||
|
* $Id$
|
||
|
*
|
||
|
******************************************************************************
|
||
|
|
||
|
|
||
|
Introduction
|
||
|
============
|
||
|
|
||
|
The automated build script will automatically run configure, 'make all',
|
||
|
'make test' and 'make install'. Log files are kept for each step, and the
|
||
|
scripts should abort when errors occur.
|
||
|
|
||
|
The usage of nsb-package is:
|
||
|
|
||
|
Usage: nsb-package [-c] [-d] [-p] [-s SRCD] [-b BUILDD] [-i INSTALLD] VERSION
|
||
|
|
||
|
VERSION : release number (eg 5.2.2)
|
||
|
-s SRCDIR : soure directory [$HOME/src/net-snmp-VERSION]
|
||
|
-b BUILDD : build directory [$HOME/build/]
|
||
|
NOTE-platform will be appended to build directory
|
||
|
-i INSTALLD: install directory [$HOME/build/\$PLATFORM/usr/local]
|
||
|
|
||
|
-c : skip configure
|
||
|
-d : dirty build (don't make distclean)
|
||
|
-m : skip 'make all'
|
||
|
-p : don't pause at prompts in between stages
|
||
|
-t : skip 'make test'
|
||
|
|
||
|
|
||
|
The defaults assume you have a 'src', 'build' and 'binaries' directory in
|
||
|
your home directory.
|
||
|
|
||
|
|
||
|
|
||
|
Recommended Procedure
|
||
|
=====================
|
||
|
|
||
|
1) Log into Sourceforge Compile Farm Server
|
||
|
|
||
|
2) Update source (this will likely be automated in the future)
|
||
|
|
||
|
For example, for release 5.0.3:
|
||
|
|
||
|
$ cd ~/src
|
||
|
$ CVS_RSH=ssh cvs -d $USER@cvs.net-snmp.org:/cvsroot/net-snmp \
|
||
|
-q co -r Ext-5-0-3 -d ~/src/net-snmp-Ext-5-0-3 net-snmp
|
||
|
|
||
|
3) Run the package script.
|
||
|
|
||
|
$ $HOME/src/net-snmp-cvs/dist/nsb-package -r \
|
||
|
-s $HOME/src/net-snmp-5.0.5 5.0.5
|
||
|
|
||
|
4) Create tarball (assuming no errors; see next section if there are errors)
|
||
|
|
||
|
$ cd ~/build/`nsb-platform`
|
||
|
$ tar cvf net-snmp-5.0.3-`nsb-platform`.tar usr
|
||
|
$ gzip --best *.tar
|
||
|
|
||
|
5) Copy tarball to Sourceforge shell sever
|
||
|
|
||
|
$ scp *.gz net-snmp.sourceforge.net:~/binaries/
|
||
|
|
||
|
6) Log out of compile farm server, log into shell server
|
||
|
|
||
|
7) Upload to Sourceforge
|
||
|
|
||
|
$ ftp upload.sourceforge.net
|
||
|
>bin
|
||
|
>put *.gz
|
||
|
|
||
|
8) Update binaries via Sourceforge admin page
|
||
|
|
||
|
|
||
|
|
||
|
Builds with errors
|
||
|
==================
|
||
|
|
||
|
Should you encounter a build error, you will most likely want to skip the
|
||
|
'make distclean' and configure step (assuming the problem wasn't with
|
||
|
configure!). To do this, specify the 'dirty' and 'skip configure' options:
|
||
|
|
||
|
$ nsb-package -p -d -c Ext-5-0-3
|
||
|
|
||
|
|
||
|
Should the build succeed, but some tests fail during 'make test', you probably
|
||
|
can to skip the test step to get to the install step:
|
||
|
|
||
|
$ nsb-package -p -d -c -t Ext-5-0-3
|
||
|
|
||
|
|
||
|
OTHER PROBLEMS
|
||
|
--------------
|
||
|
* "Cannot find nsb-functions"
|
||
|
|
||
|
It's a hack, but symlink nsb-functions and nsb-package to your local
|
||
|
bin directory ($HOME/bin). I'm trying to think of a better solution.
|
||
|
|
||
|
* "gcc: snmp_version.lo: No such file or directory"
|
||
|
|
||
|
This is a good indication that you have previously build in your
|
||
|
source directory. 'make distclean' in your source directory, or
|
||
|
check out a fresh new version from CVS.
|