############################## # NetSolve v1.4 INSTALLATION # ############################## Introduction ============ NetSolve 1.4's configuration and installation environment has changed completely from previous versions. Previously, a custom set of make include files were used to achieve easy installation. Apache 1.4 now uses autoconf to create an environment that looks like many other Open Source projects. INSTALLING THE NETSOLVE SOFTWARE ================================ 0. Overview for the impatient -------------------------- UNIX> ./configure UNIX> make standard 1. Configuration (generic) ----------------------- NetSolve now uses an autoconf generated "configure" script to help automate the installation process. To run this script, simply change to the top level NetSolve directory and run: UNIX> ./configure You should see a number of messages print out as configure tries to decipher the environment. NOTE: If you have previously configured on another platform, you MUST run: UNIX> make configclean 2. Customizing the configuration ----------------------------- There are 2 main ways to customize the NetSolve configuration. The first is to pass command line arguments to the configure script described above. The second is to manually edit the files that would be created by the configure script. 2.1 Command line argments to configure -------------------------------------- If you type: UNIX> ./configure --help you should see a message discussing the usage of the configure script. At the bottom of the printout, you should see the options pertinent specifically to NetSolve. They are: ===Begin NetSolve Compile Options: --with-cc determine which C compiler to use --with-cnooptflags set compiler flags that don't deal with optimization - (ONLY USE IN COMBINATION WITH --with-cc) - CFLAGS will be set to C_OPT_FLAGS+C_NOOPT_FLAGS --with-coptflags set compiler optimization flags - (ONLY USE IN COMBINATION WITH --with-cc) - CFLAGS will be set to C_OPT_FLAGS+C_NOOPT_FLAGS --with-fc determine which Fortran compiler to use --with-fnooptflags set compiler flags that don't deal with optimization - (ONLY USE IN COMBINATION WITH --with-fc) - FFLAGS will be set to F_OPT_FLAGS+F_NOOPT_FLAGS --with-foptflags set compiler optimization flags - (ONLY USE IN COMBINATION WITH --with-fc) - FFLAGS will be set to F_OPT_FLAGS+F_NOOPT_FLAGS --with-ldflags set loader flags ===Begin NetSolve Run Time Options: --with-nws=NWSDIR location of NWS installation dir --with-ibp=IBPDIR location of IBP installation dir --with-kerberos use Kerberos5 client authentication --with-proxy which Proxy? (netsolve, globus) --with-outputlevel output level (debug,view,none) --enable-infoserver[=alone] use InfoServer [alone] ===Begin NetSolve Service Options: --with-petsc=PETSCDIR location of PETSc installation dir --with-petsclibdir=PETSC_LIB_DIR location of PETSc library --with-aztec=AZTEC_DIR location of Aztec installation dir --with-azteclib=AZTEC_LIB Aztec link line --with-superlu=SUPERLU_DIR location of SuperLU installation dir --with-superlulib=SUPERLU_LIB SuperLU link line --with-mpi=MPI_DIR location of MPI Root Directory --with-lapacklib=LAPACK_LIB LAPACK link line --with-scalapacklib=SCALAPACK_LIB SCALAPACK link line --with-blaslib=BLAS_LIB BLAS link line --with-blacslib=BLACS_LIB BLACS link line --with-mldk=MLDK_PATH Path to MathLink Development Kit 2.2 Manually editing configuration files ---------------------------------------- The main file created by the ./configure command is ./conf/Makefile.$NETSOLVE_ARCH.in, where $NETSOLVE_ARCH is typically the string printed out by the command ./conf/config.guess, with all '-' and '.' characters converted to '_' characters. A user may edit this file to his/her liking, however, *ALL* pertinent options can be set by using the abovementioned command line arguments to configure. 3. Compilation ----------- UNIX> ./configure # see above section UNIX> make # prints out all available options Edit ./server_config if you wish to specify an agent other than netsolve.cs.utk.edu, or if you are planning to compile the agent and server and need to enable optional services (LAPACK, Sparse Solvers, etc...) UNIX> make standard # makes agent, server, client, tools, tests All binary executables can be found in ./bin/$NETSOLVE_ARCH Client Libraries will be located in ./lib/$NETSOLVE_ARCH NOTE: If for some reason you wish to force a rebuild, use UNIX> make ... FRC=force_rebuild 4. Testing ------- UNIX> setenv NETSOLVE_AGENT `hostname` #Assumes shell from csh family UNIX> $NETSOLVE_ROOT/bin/$NETSOLVE_ARCH/agent UNIX> $NETSOLVE_ROOT/bin/$NETSOLVE_ARCH/server UNIX> cd $NETSOLVE_ROOT/bin/$NETSOLVE_ARCH UNIX> Test NOTE: $NETSOLVE_ROOT and $NETSOLVE_ARCH will most likely not be set in your environment and the appropriate values should be substituted in the commands.