The following sections provide instructions for some additional installation options.
To delete the intermediate files created when building the OOMMF software from source code, use pimake to build the target objclean in the root directory of the OOMMF distribution.
tclsh app/pimake/pimake.tcl objcleanRunning the strip utility on the OOMMF executable files should also reduce their size somewhat.
The pimake application guides the building of OOMMF software according to the rules recorded in makerules.tcl files. There are several targets which may be used as arguments to pimake to achieve different tasks. When no target is supplied to pimake on the command line, the first target in the local makerules.tcl file is built, which is usually the target all. Each target builds in the current directory and all subdirectories. The conventional targets are:
OOMMF software supports local customization of some of its features. All OOMMF programs load the file config/options.tcl, which contains customization commands as well as editing instructions. As it is distributed, config/options.tcl directs those programs that load it to also load the file config/local/options.tcl, if it exists. Because future OOMMF releases may overwrite the file config/options.tcl, permanent customizations should be made by copying config/options.tcl to config/local/options.tcl and editing the copy. It is recommended that you leave in the file config/local/options.tcl only the customization commands necessary to change those options you wish to modify. Remove all other options so that overwrites by subsequent OOMMF releases are allowed to change the default behavior.
Notable available customizations include the choice of which network port the host service directory application uses, and the choice of what program is used for the display of help documentation. By default, OOMMF software uses the application mmHelp, which is included in the OOMMF release, but the help documentation files are standard HTML, so any web browser (for example, Netscape Navigator or Microsoft Internet Explorer) may be used instead. Complete instructions are in the file config/options.tcl.
OOMMF software classifies computing platforms into different types using the scripts in the directory config/names relative to the root directory of the OOMMF distribution. Each type of computing platform is assigned a unique name. These names are used as directory names and in index and configuration files so that a single OOMMF installation may contain platform-dependent sections for many different types of computing platforms.
To learn what name OOMMF software uses to refer to your computing platform, run the Tcl script platform.tcl in the OOMMF root directory.
First, use pimake to build the target distclean to clear away any compiled executables built using the old platform name.
tclsh app/pimake/pimake.tcl distcleanThen, to change the name OOMMF software uses to describe your platform from foo to bar, simply rename the file
config/names/foo.tcl to config/names/bar.tcland
config/cache/foo.tcl to config/cache/bar.tcl.After renaming your platform type, you should recompile your executables using the new platform name.
If the script platform.tcl reports the platform name unknown, then none of the scripts in config/names/ recognizes your platform type. As an example, to add the platform name foo to OOMMF's vocabulary of platform names, create the file config/names/foo.tcl. The simplest way to proceed is to copy an existing file in the directory config/names and edit it to recognize your platform.
The files in config/names include Tcl code like this:
Oc_Config New _ \ [string tolower [file rootname [file tail [info script]]]] { # In this block place the body of a Tcl proc which returns 1 # if the machine on which the proc is executed is of the # platform type identified by this file, and which returns 0 # otherwise. # # The usual Tcl language mechanism for discovering details # about the machine on which the proc is running is to # consult the global Tcl variable 'tcl_platform'. See the # existing files for examples, or contact the OOMMF # developers for further assistance. }
After creating the new platform name file config/names/foo.tcl, you also need to create a new platform cache file config/cache/foo.tcl. A reasonable starting point is to copy the file config/cache/unknown.tcl for editing. Contact the OOMMF developers for assistance.
Please consider contributing your new platform recognition and configuration files to the OOMMF developers for inclusion in future releases of OOMMF software.
If the script platform.tcl reports ``Multiple platform names are compatible with your computer'', then there are multiple files in the directory config/names/ that return 1 when run on your computer. For each compatible platform name reported, edit the corresponding file in config/names/ so that only one of them returns 1. Experimenting using tclsh to probe the Tcl variable tcl_platform should assist you in this task. If that fails, you can explicitly assign a platform type corresponding to your computing platform by matching its hostname. For example, if your machine's host name is foo.bar.net:
Oc_Config New _ \ [string tolower [file rootname [file tail [info script]]]] { if {[string match foo.bar.net [info hostname]]} { return 1 } # Continue with other tests... }
Contact the OOMMF developers if you need further assistance.
This section lists installation options for Microsoft Windows.
Right mouse click on the desktop to bring up the configuration dialog, and select New|Shortcut. Enter the command line necessary to bring up OOMMF, e.g.,
tclsh80 c:\oommf\app\oommf\oommf.tcl
Click Next> and enter OOMMF for the shortcut name. Select Finish.
At this point the shortcut will appear on your desktop with either the tclsh or wish icons. Right mouse click on the icon and select Properties. Select the ShortCut tab, and bring up Change Icon... Under File Name: enter the OOMMF icon file, e.g.,
C:\oommf\app\oommf\oommf.ico
Click OK. Back on the Shortcut tab, change the Run: selection to Minimized. Click OK to exit the Properties dialog box. Double clicking on the OOMMF icon should now bring up the OOMMF application mmLaunch.
The Cygwin Project is a free port of the GNU development environment to Windows NT, 95, and 98, which includes the GNU C++ compiler gcc and a port of Tcl/Tk. OOMMF has been tested against the Beta 20.1 release of Cygwin, and sample config/names/cygtel.tcl and config/cache/cygtel.tcl files are included in the OOMMF distribution. Use the cygtclsh80.exe program as your tclsh program when configuring, building, and launching OOMMF software.
Note that OOMMF software determines whether it is running with the Cygwin versions of Tcl/Tk by examining the environment variable TERM. If TERM is set to the value cygwin, the Cygwin environment is assumed. If you are using the Cygwin environment, and you set the TERM environment variable to something else, OOMMF software will be confused.
If you encounter difficulties during OOMMF start up, you may need to set the environment variable TCL_LIBRARY.
%SystemDrive%\Program Files\Tcl\lib\tcl8.0
Click Set and OK to finish.
Edit the file autoexec.bat. Add a line such as the following:
set TCL_LIBRARY=C:\Program Files\Tcl\lib\tcl8.0
C:\> ftype TclScript "C:\Program Files\Tcl\bin\wish80.exe" "%1" %2 %3 %4 %5 %6 %7 %8 %9Note that the quotes are required as shown to protect spaces in pathnames.