# $Id: INSTALL,v 1.2 2001/08/19 12:25:42 issever Exp $



====================================================================== 



			SMM++ Installation Guide
			    for unix systems



====================================================================== 

0) Index
--------

0) Index
1) Intro
2) Install itcl 3
3) Install SMM++
4) Troubleshooting




====================================================================== 

1) Intro
--------

SMM is installed mainly in two steps:

  1. install itcl 3
  2. install SMM++

The next sections will give more detailed information about each step.





====================================================================== 

2) Install itcl 3
-----------------

First of all: dont be afraid of itcl! It _is_ a standart extension to
tcl/tk, which again is a standart!

To be complete: SMM needs itcl/itk/iwidgets all together and at least
iwidgets in version 3, which again means itcl version 3.

Anyways,.. 
itcl runs nearly with any unix flavor.

0) itcl3 is installed already -> you are lucky;)
   check if the program 'itkwish' or even 'itkwish3.0'
   exists!   
1) Linux and root access:
   just select the itcl3 package and install it.
   You can check out the webpages:
   Debian (http://www.debian.org) has itcl3
   Redhat (http://www.redhat.com) has itcl3
   Suse (http://www.suse.de) still has itcl2.2
2) Otherwise please refer to the itcl webpage:   
   http://www.tcltk.com/itcl/
   you can download it from there and they seem to have complete
   installation guides (although I didnt test it).
3) may be you can convince your operator to install itcl3, as one
   might need it for writing scripts. It is serious software!;)

If you still need assistance please mail me or post into the mailing
list. 




====================================================================== 

3) Install SMM++
----------------

SMM++ uses now Makefiles for installation. The default configuration
will install SMM++ into /usr/local. This is usually the best place to 
keep additional software. All you need to do is:

0a) log in as root
0b) change to the directory, this files is in.
1) execute 'make'
2) execute 'make install'

If you don't have root access, you need to edit the Makefile. The
Makefile is easy to read and understand and is documented. If you
still have questions, please post into the forums or email.


====================================================================== 

4) Troubleshooting
------------------

In case of any problem you cant solve on your own, please post to the
mailing list or send me an email.


......................................................................
......................................................................
......................................................................

Prob. 1) 
""""""""

You might get a response like this:
] zsh: command not found: smm

Solution 1)
"""""""""""
Your path to itcl/itk (itkwish/itkwish3.0) is wrong. Ask a local
wizzard or type in 'which itkwish' to get the right path. Once you have
the path edit the file 'smm' in your 'smm-source' folder. Exchange the path
in the first line with the right one, but do nothing else (e.g. remove
options, exclamation mark, put some lines infront of it, etc.). Now
everything should work OK. 

The first line in 'smm' should look like:
#!/usr/bin/itkwish

here the path /usr/bin may be wrong.



......................................................................
......................................................................
......................................................................

Prob. 2)
""""""""
If you get this response:

]Error in startup script: can't find package Iwidgets 3.0
]    while executing
]"package require Iwidgets 3.0"
]    (file "/home/issever/HOME/privat/programming/smm4r0/sources/smm.tcl" line 27)
]    invoked from within
]"source $SMMSRCPATH/sources/smm.tcl"
]    (file "././smm" line 28)

Solution 2)
"""""""""""

a) You dont have itcl version 3 installed. Either get the adequate
packages and install them (debian, redhat,..) or get the sources 
and compile them. If you cant find die itcl sources just drop me a 
line. I will point you to there.

b) You have itcl 3 install (and are really calling the right 
itkwish), but it is not propper installed. Ergo, itkwish doesnt
know where to look for the packages.

b.i) do all the installation again, but everything right this time.
b.ii) you need itcl anyway only for SMM++ and want a quick solution:
  in the file 'smm' in the sources directory include this line:

set SMMIWIDGETSPATH "/usr/lib/iwidgets3.0.0"

or the path that corresponds to your installation.

/usr/lib/iwidgets3.0.0 is a directory with the following content:
demos         iwidgets.tcl  pkgIndex.tcl  scripts

The file iwidgets.tcl looks like this:

--- iwidgets.tcl ---------------------------------------------------------
#
# iwidgets.tcl
# ----------------------------------------------------------------------
# Invoked automatically by [incr Tk] upon startup to initialize
# the [incr Widgets] package.
# ----------------------------------------------------------------------
#  AUTHOR: Mark L. Ulferts               EMAIL: mulferts@spd.dsccc.com
#
#  @(#) $Id: INSTALL,v 1.2 2001/08/19 12:25:42 issever Exp $
# ----------------------------------------------------------------------
#                Copyright (c) 1995  Mark L. Ulferts
# ======================================================================
# See the file "license.terms" for information on usage and
# redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.

package require Tcl 8.0
package require Tk 8.0
package require Itcl 3.0
package require Itk 3.0

namespace eval ::iwidgets {
    namespace export *

    variable library [file dirname [info script]]
    variable version 3.0.0
}

lappend auto_path [file join $iwidgets::library scripts]
package provide Iwidgets $iwidgets::version
-------------------------------------------------------------------------

here you can see, that it has the right version: 3.0.0



......................................................................
......................................................................
......................................................................

Prob. 3) 
""""""""

You might get a response like this:

]Error in startup script: ambiguous option "-indicator"
]    while executing
]"menubutton $itk_interior.menuBtn -relief raised -indicator on
]-textvariable [scope _currentItem] -takefocus 1  -menu
][..........................]
][... more ouput deleted ...]
][..........................]

Solution 3)
"""""""""""
Solved by Wolfgang Rufeger. Thanks a lot!

Edit the file 'smm' in your sources directory.

You will find a "section":
# TROUBLESHOOTING:
#  uncomment if necessary
#  please refer to the troubleshooting section of your install docu

there uncomment the following line (means remove the '#' character at the
beginning of the line):
# set TROUBLE(optionmenu) 1
   ->
set TROUBLE(optionmenu) 1



# ##############################################################################
# ### LOG MESSAGES
# ### As suggested by the CVS-manual this region is put to the end of the file.
# ##############################################################################
#
# $Log: INSTALL,v $
# Revision 1.2  2001/08/19 12:25:42  issever
# Added the cvs keywords Id at start of the file
# and Log at the end of the file
#
#
