Source Installation

Introduction

Source code build and installation usually requires much more time and attention to detail to get things like prerequisite software, C compiler software, and versions right. It does provide slightly more control over runtime configuration than the Standard Installation. This installation method is only recommended for advanced system administrators. We highly recommend that most customers use the Standard Installation. It's much faster and easier.

Prerequisites

  • Have your license file ready if you are installing a permanent license now. See the License Requirements section for more information.

  • Make sure you read the Release Notes before proceeding. This file contains valuable information on what system platforms are supported.

  • Make sure you have a supported C compiler. SysInfo™ usually, but not always, supports GNU's GCC compiler. You need GCC 3.2 or later if you are compiling on a 64-bit OS such as Solaris 7 and later on SPARC. Please read the Release Notes for platform specific information about what compiler is required.

  • You must use GNU make to build from source.

  • If you wish to build SysInfo™ with support for its GUI, then you will need Perl 5.1.4-GA05_03 or later and Perl-Tk 8.023 or later. Both of these are available from http://www.cpan.org.

    • Hint: GNU gcc version 3.0 or later is required to build Perl on AIX.

  • GNU sed is required on versions of FreeBSD prior to 4.0.

Build Notes

  • Supported Platforms. SysInfo™ uses GNU autoconfigure (i.e. A ./configure script) to configure many system parameters before compilation. However, this does not mean SysInfo™ will work on any system. SysInfo™ contains very specific support for specific platforms as specified in the Release Notes.

  • Compiling for different OS versions: In general, SysInfo™ will run on the OS version you compiled it on and later releases. It will not run on an OS older than the OS version it was compiled on. There are exceptions to this, including those mentioned below for Solaris. SysInfo™ defines some (cryptic) rules for each OS which specify these what OS versions a binary runs on. These rules are defined in config/os.rcf where os is the name of the OS in lower case. e.g. config/sunos.rcf is the SunOS/Solaris rule file.

  • Solaris 7 and later: Starting with Solaris 7 Sun introduced 64-bit Solaris. You will need one SysInfo™ binary for 32-bit systems and one binary for 64-bit systems. Starting with SysInfo™ 5.1.4-GA, you do not need one binary per Solaris version. You need two total binaries - one 32-bit and one 64-bit. Your 32-bit binary will run on 32-bit systems running the same or later version of Solaris. Similiarly your 64-bit binary will run on 64-bit systems running the same or later version of Solaris. (All Ultra machines are 64-bit). You can check which version you are running by executing /usr/bin/isainfo -k -v. If the output says 64-bit you are running a 64-bit kernel.

    To build a binary of SysInfo™ for a system running a 64-bit kernel, you must have a compatible compiler. We recommend using Sun ONE Studio (formerly Forte, formerly WorkShop) C compiler on Sun Solaris systems. WorkShop Compiler 5.1.4-GA was the first Sun compiler to support 64-bit systems via the -xarch=v9 option. GCC version 3.2 and later supports 64-bit compiles via the -m64 option. However, MagniComp does not test with this configuration.

    By default, a binary that runs on the local system will be built. You can force a build of a 64-bit binary on a 32-bit system and vice-versa. To build a 64-bit binary on a 32-bit system, set the environment variable KISA to be sparcv9. To build a 32-bit binary on a 64-bit system, set KISA to be sparcv8. i.e. For csh users:

    setenv KISA sparcv9
    
    For sh/ksh users:
    KISA=sparcv9;export KISA
    
  • Makefile:XXX: *.d: No such file or directory During initial compilation you may see error messages like this. The messages are perfectly normal and can be safely ignored. They are generated the first time make is run and indicate that a dependency file does not exist. It will be automatically generated by make and further such messages for the indicated file should not appear.

Installation Instructions

  1. Obtain Perl 5.6.1 or later. Download it and unpack it into a directory srcdir/perl/src where srcdir is the directory containing the source to SysInfo™. As of SysInfo™ 5.1.4-GA, Perl is a required component. Without Perl, SysInfo™ CLI, GUI, and Perl APIs will not function.

  2. If you wish to use the SysInfo™ GUI, download a copy of Perl-Tk and unpack it into a directory srcdir/perlmodules/Tk/src where srcdir is the directory containing the source to SysInfo™. If you just want to use the SysInfo™ Command Line Interface (CLI), you can skip this step.

  3. Follow the instructions to Download the source distribution. You should have a file named mcsysinfo-5.1.4-GA.tar.gz

  4. Unpack the distribution:

    gzip -d mcsysinfo-5.1.4-GA.tar.gz | tar -xf -
    
  5. By default, configure will choose the name of the compiler which is correct for the system platform. However, if you have done things like make cc a link to gcc this may not work correctly in some cases. See the Build Notes for more specific details.

    If you need to specify a compiler to use, then specify one now by setting the environment variable $CC to the name of the compiler to use. For csh users use:

    setenv CC compiler
    

    For sh/bash/ksh users use:

    CC=compiler;export CC
    

    where compiler is the name of the compiler to use. i.e cc or gcc.

  6. Run the configure program to build configuration information for your system:
    ./configure
    

    Without any options configure will build SysInfo™ with an installation directory of /opt/sysinfo. If you wish to specify an installation directory, then use the --prefix=dir argument. For instance, to use /tools/sysinfo as the main directory, run:

    ./configure --prefix=/tools/sysinfo
    
  7. Now compile and build everything by running make (make sure to use GNU make):

    make
    
  8. If you are installing into a directory where SysInfo™ is already installed, you will need to uninstall the existing version or install SysInfo™ into a different directory. To uninstall the existing SysInfo™, run

    rm -rf prefix
    
    where prefix is the directory where SysInfo™ is already installed.
  9. To install everything, run the following:
    make install
    
  10. If you are ready to install a license, copy the license file into prefix/config/license.mcl where prefix prefix is the directory which SysInfo™ was installed into.
  11. The installation is now complete. To run SysInfo™, open a shell prompt and run:
    mcsysinfo
    
    If you installed SysInfo™ in a directory not in your $PATH then you'll need to specify the full pathname. i.e.
    /tools/sysinfo/bin/mcsysinfo