From a7f89980e5b3f4b9a74c70dbc5ffe8aabd28be28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Sun, 6 Jul 2014 18:04:32 +0200 Subject: Imported Upstream version 2.9.3 --- INSTALL | 224 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 224 insertions(+) create mode 100755 INSTALL (limited to 'INSTALL') diff --git a/INSTALL b/INSTALL new file mode 100755 index 0000000..cf523ba --- /dev/null +++ b/INSTALL @@ -0,0 +1,224 @@ +------------------------------------- + INSTALL for ipmiutil source +------------------------------------- + +The ipmiutil source package provides IPMI-based utilities and kernel +patches for managing various servers in Linux or Windows. + +The same source files can be built in both Linux and Windows as shown +below. + +------------------------------------- + Build instructions for Linux +------------------------------------- + +To build with some GPL code: +If you are building ipmiutil for open-source, then the MD2 hash +for IPMI LAN and the valinux driver interface (/dev/ipmikcs) can +be supported. If so, you should specify the following during +configure: + "./configure --enable-gpl" +The default is to build with only BSD-licensed code and not to +include the MD2 and valinux features. The md2.h and ipmi_ioctl.h +files with GPL code can be removed if this option is not enabled. + +To build a standalone binary without IPMI LAN 2.0 (lanplus plugin), +which may be desirable for use on bootable media (USB/CDROM), to +decrease the size or to avoid using libcrypto, you can specify the +following during configure: + "./configure --disable-lanplus" +or + "./configure --enable-standalone" +builds it without lanplus libs and without GPL code. + +To add LanDesk IPMI support: +Support for the LanDesk IPMI driver requires a library supplied by +LanDesk (libipmiapi.a). After obtaining this library, place it in +lib/libipmiapi.a. Then you can link ipmiutil to support it by +specifying the following during configure: + "./configure --enable-landesk=yes" + +Steps to build for Linux: +# ./beforeconf.sh + Which automates these functions: + * copying libtool files + * aclocal (may be needed if automake versions are different) + * autoconf (may be needed if automake versions are different) + * automake +# ./configure + --enable-landesk adds landesk library support [default=no] + --disable-lanplus disable lanplus library support + --enable-standalone build standalone, with no GPL or LanPlus libs. + --enable-gpl build with some GPL code [default=no] +# make + +To add the ifruset utility, which allows setting any FRU Product fields: +# cd util; make ifruset +# ifruset -? + +To build and install an rpm package, use one of the following: +# make install +# make rpm +The make rpm produces a binary rpm, and a source rpm, which can be +installed with "rpm -i *.rpm". + +To build and install a Debian package, do this: +# dpkg-buildpackage +then install it with "dpkg -i *.deb". + +------------------------------------- + Build instructions for Windows +------------------------------------- + +The ipmiutil Windows binaries for each release are pre-built and posted +at http://ipmiutil.sourceforge.net, but here is how to build the ipmiutil +EXEs for Windows from source. +Note that the WIN32 compile flag is used. +The ipmiutil buildwin.cmd shows how to compile and link the lib and exe +files, although many people prefer instead to do builds with the +Microsoft VisualStudio project GUI. +See also ipmiutil UserGuide section 5.2 for more details if needed. + +1) Install Visual Studio +The build environment assumes that VisualStudio 6.0 VC98 or +later is installed. + +2) Download contrib files +Before running buildwin.cmd, first download the contributed +files for Windows (includes getopt.c and openssl). +A copy of these files is available from + http://ipmiutil.sf.net/FILES/ipmiutil-contrib.zip + +3) Copy initial contrib files into ipmiutil +Below are sample directories where ipmiutil*.tar.gz was unpacked, +and where the openssl*.tar.gz was unpacked. +> set ipmiutil_dir=c:\dev\ipmiutil +> set openssl_dir=c:\dev\openssl + +First, copy the getopt.c & getopt.h into the util directory. +From the directory where ipmiutil-contrib.zip was unpacked, +> copy getopt.* %ipmiutil_dir%\util +The iphlpapi.lib comes from VS 2003 .Net or Win2003 DDK. +> copy iphlpapi.lib %ipmiutil_dir%\lib +> copy iphlpapi.h %ipmiutil_dir%\util + +4) Build the openssl libraries +To build from original source you would then want to build a copy of openssl +for Windows, and copy the built openssl files to lib & inc. +Follow the openssl build instructions from INSTALL.W32 for VC++ to build +these binaries. Note that perl must also be installed first. + +5) Copy the resulting LIB and DLL binaries to ipmiutil +> copy %openssl_dir%\out32dll\libeay32.lib %ipmiutil_dir%\lib +> copy %openssl_dir%\out32dll\ssleay32.lib %ipmiutil_dir%\lib +> copy %openssl_dir%\out32dll\libeay32.dll %ipmiutil_dir%\util +> copy %openssl_dir%\out32dll\ssleay32.dll %ipmiutil_dir%\util +> mkdir %ipmiutil_dir%\lib\lanplus\openssl +> copy %openssl_dir%\include\openssl\*.h %ipmiutil_dir%\lib\lanplus\openssl + +6) Set the Visual Studio variables with vcvars*.bat +For your installation of Microsoft Visual Studio, it has batch files to +set the Visual C variables. Run the appropriate architecture version of +these batch files to set the VC variables. + +Example: +C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\vcvarsall.bat +or +C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat +or +C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64\vcvarsamd64.bat + +7) Run buildwin.cmd +buildwin.cmd will build all of the Windows EXE and DLL files. + +If you are using ipmiutil for a bootable WinPE environment, and do not need +Serial-Over-LAN functionality, the buildwin2.cmd will build the Windows EXE +files without using the openssl libraries, to simplify the process. The +openssl libraries are required for the IPMI LAN 2.0 crypto functions that +Serial-Over-LAN requires. + + +------------------------------------- + Build instructions for Solaris +------------------------------------- +# iver=2.7.9 +# uname -a +SunOS unknown 5.10 Generic_127128-11 i86pc i386 i86pc +# gunzip ipmiutil-${iver}.tar.gz +# tar xvf ipmiutil-${iver}.tar +# cd ipmiutil-${iver} +# PATH=/usr/sbin:/usr/bin:/usr/ucb:/usr/openwin:/usr/ccs/bin:/usr/sfw/bin +# ./configure +# make +# make tarsol +This produces /tmp/ipmiutil-${iver}-solaris.tar with the binaries. +# gzip /tmp/ipmiutil-${iver}-solaris.tar + +Solaris Release Notes: +- Built with support for bmc, lan, and lanplus interfaces. + Supports the Solaris 10 /dev/bmc driver via putmsg method. +- Requests to slave addresses other than BMC are not supported by + the Solaris bmc driver (e.g. to HSC at 0xc0), and are sent to + the BMC sa instead. +- Memory mapping logic returns an error (e.g. BIOS version). +- idiscover -a broadcast ioctl works now in ipmiutil-2.3.1 + +To Install on Solaris: + gunzip /tmp/ipmiutil-${iver}-solaris.tar.gz + tar xvf /tmp/ipmiutil-${iver}-solaris.tar + ./install.sh + +------------------------------------- + Build instructions for FreeBSD +------------------------------------- +# iver=2.7.9 +# gunzip ipmiutil-${iver}.tar.gz +# tar xvf ipmiutil-${iver}.tar +# cd ipmiutil-${iver} +# ./configure +# make +# make tarbsd +This produces /tmp/ipmiutil-${iver}-bsd.tar with the binaries. +# gzip /tmp/ipmiutil-${iver}-bsd.tar + +FreeBSD Release Notes: + - ipmiutil-2.3.5 supports FreeBSD with direct driverless KCS + - ipmiutil-2.5.2 adds support for FreeBSD 7.x ipmi driver port + +To Install on FreeBSD: + gunzip /tmp/ipmiutil-${iver}-bsd.tar.gz + tar xvf /tmp/ipmiutil-${iver}-bsd.tar + ./install.sh + +------------------------------------- + Build instructions for MAC OSX +------------------------------------- +# iver=2.9.1 +# tar -xvxf ipmiutil-${iver}.tar.gz +# cd ipmiutil-${iver} +# ./beforeconf.sh +There are some warnings shown, but this does the aclocal/autoconf/automake. +# ./configure +# make +# make tarbsd +This produces /tmp/ipmiutil-${iver}-bsd.tar with the binaries. +# mv /tmp/ipmiutil-${iver}-bsd.tar /tmp/ipmiutil-${iver}-macos.tar +# gzip /tmp/ipmiutil-${iver}-macos.tar + +To Install on MacOS from a Terminal: + gunzip /tmp/ipmiutil-${iver}-macos.tar.gz + tar xvf /tmp/ipmiutil-${iver}-macos.tar + ./install.sh + +Release Notes for MAC OSX: + - ipmiutil-2.9.1 supports MacOSX client builds + - Does not yet support AppleBMC.kext, pending documentation + +--------------------------------------- + Build instructions for ARM (Android) +--------------------------------------- +# tar -xzvf ipmiutil-${iver}.tar.gz +# cd ipmiutil-${iver} +# ./configure --enable-standalone --host=arm +# make + -- cgit v1.2.3