<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://bone.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kksnishi</id>
	<title>bone.wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://bone.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kksnishi"/>
	<link rel="alternate" type="text/html" href="https://bone.wiki/index.php/Special:Contributions/Kksnishi"/>
	<updated>2026-10-30T03:45:33Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3894</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3894"/>
		<updated>2010-06-08T16:44:41Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 1. Autocontour */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3885</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3885"/>
		<updated>2010-06-08T04:01:42Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 3. Create and run FE models */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3884</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3884"/>
		<updated>2010-06-08T04:01:12Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 3. Create and run FE models */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=File:2009-10-15_FEM_Tutorial.pdf&amp;diff=3883</id>
		<title>File:2009-10-15 FEM Tutorial.pdf</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=File:2009-10-15_FEM_Tutorial.pdf&amp;diff=3883"/>
		<updated>2010-06-08T04:00:12Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=File:Mesh_solve_clean.txt&amp;diff=3882</id>
		<title>File:Mesh solve clean.txt</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=File:Mesh_solve_clean.txt&amp;diff=3882"/>
		<updated>2010-06-08T03:59:02Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3881</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3881"/>
		<updated>2010-06-08T03:58:12Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* HowTo: Perform a cortical porosity and finite element analysis of HR-pQCT scans */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3880</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3880"/>
		<updated>2010-06-08T03:39:55Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* HowTo: Perform a cortical porosity and finite element analysis of HR-pQCT scans */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3879</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3879"/>
		<updated>2010-06-08T03:36:53Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* HowTo Library */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3878</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3878"/>
		<updated>2010-06-08T03:34:22Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 2. Evaluate Cortex */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3877</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3877"/>
		<updated>2010-06-07T23:16:39Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 2. Evaluate Cortex */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3876</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3876"/>
		<updated>2010-06-07T23:13:18Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 1. Autocontour */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3875</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3875"/>
		<updated>2010-06-07T22:57:20Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 1. Autocontour */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=File:HIJACK_AUTOCONTOUR.TXT&amp;diff=3874</id>
		<title>File:HIJACK AUTOCONTOUR.TXT</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=File:HIJACK_AUTOCONTOUR.TXT&amp;diff=3874"/>
		<updated>2010-06-07T22:56:13Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3873</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3873"/>
		<updated>2010-06-07T22:51:23Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 1. Autocontour */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3872</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3872"/>
		<updated>2010-06-07T22:49:38Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 1. Autocontour */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3871</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3871"/>
		<updated>2010-06-07T22:48:12Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 1. Autocontour */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3870</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3870"/>
		<updated>2010-06-07T22:46:38Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 1. Autocontour */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3869</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3869"/>
		<updated>2010-06-07T22:45:00Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* 1. Autocontour */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3868</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3868"/>
		<updated>2010-06-07T22:36:56Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* HowTo: Perform a cortical porosity and finite element analysis of HR-pQCT scans */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3867</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3867"/>
		<updated>2010-06-07T22:26:37Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* HowTo: Perform a cortical porosity and finite element analysis of HR-pQCT scans */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3866</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3866"/>
		<updated>2010-06-07T22:25:42Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* HowTo: Perform a cortical porosity and finite element analysis of HR-pQCT scans */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=How_To%27s&amp;diff=3865</id>
		<title>How To&#039;s</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=How_To%27s&amp;diff=3865"/>
		<updated>2010-06-07T22:23:50Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* HowTo: Restore a zipped archive file from mike.kin */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Vtkski_development&amp;diff=3852</id>
		<title>Vtkski development</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Vtkski_development&amp;diff=3852"/>
		<updated>2010-06-01T19:33:41Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* Compiling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Documentation for vtkski==&lt;br /&gt;
&lt;br /&gt;
On-line documentation for vtkski is available at http://mike.kin.ucalgary.ca/vtkski/ .&lt;br /&gt;
&lt;br /&gt;
Also, see [[vtkMeshModel]] which contains some examples of using the class vtkMeshModel .&lt;br /&gt;
&lt;br /&gt;
==Compiling and Installation==&lt;br /&gt;
&lt;br /&gt;
===Getting the source code===&lt;br /&gt;
&lt;br /&gt;
Get the sources from the subversion repository.&lt;br /&gt;
&lt;br /&gt;
 svn checkout https://mike.kin.ucalgary.ca/svn/bonelab/trunk/vtkski&lt;br /&gt;
&lt;br /&gt;
See the section on svn for more info: [[Subversion (SVN)]]&lt;br /&gt;
&lt;br /&gt;
===Compiling===&lt;br /&gt;
&lt;br /&gt;
From the vtkski project directory, create a build directory in trunk/Libraries and use cmake to configure the build:&lt;br /&gt;
&lt;br /&gt;
 mkdir build&lt;br /&gt;
 cd build&lt;br /&gt;
 cmake-gui ..&lt;br /&gt;
&lt;br /&gt;
The most important cmake variable is &amp;lt;tt&amp;gt;VTK_DIR&amp;lt;/tt&amp;gt;.  If you intend to also build the paraview plugins, then you must build vtkski against the internal version of VTK inside the paraview build directory.  (See [[Paraview development]] if you need to install ParaView).  As an example, on my system I set &amp;lt;tt&amp;gt;VTK_DIR&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;/home/eric/source/paraview-3.8.0/build/VTK&amp;lt;/tt&amp;gt;. You will also need to specify the boost include directory.&lt;br /&gt;
&lt;br /&gt;
Then within build directory run:&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
===Building Doxygen documentation===&lt;br /&gt;
&lt;br /&gt;
To build the Doxygen documentation, set the cmake variable BUILD_DOCUMENTATION to ON.  This variable is marked as advanced.  You will need to have installed Doxygen ( http://www.doxygen.org/ ) in order to build the documentation.&lt;br /&gt;
&lt;br /&gt;
The documentation is not automatically built with make (it takes a very long time to build).  Instead, you will need to explicitly request it, like this:&lt;br /&gt;
 make  vtkskiDoxygenDoc&lt;br /&gt;
&lt;br /&gt;
====Installing the Doxygen documentation on mike.kin====&lt;br /&gt;
&lt;br /&gt;
I recommend that you build the documentation with the cmake flag DOCUMENTATION_HTML_TARZ set to on (this variable is an advanced setting).  Then the build process will automatically make a tar ball of all the HTML documentation, build/Utilities/Doxygen/vtkski-html.tar.gz , which is easy to copy over to mik.kin (using FTP or scp or the mounted Data0 volume).&lt;br /&gt;
&lt;br /&gt;
The documentation needs to live in /Library/WebServer/Documents/vtkski .  The commands would look something like this&lt;br /&gt;
 tar xvzf vtkski-html.tar.gz&lt;br /&gt;
 sudo rm -rf /Library/WebServer/Documents/vtkski     # remove old docs&lt;br /&gt;
 sudo mv html /Library/WebServer/Documents/vtkski&lt;br /&gt;
 sudo chown -R root /Library/WebServer/Documents/vtkski&lt;br /&gt;
&lt;br /&gt;
==Checklist for new vtkski classes==&lt;br /&gt;
&lt;br /&gt;
* Select a category for your new class, for example &#039;IO&#039;, and put your source files in that directory.&lt;br /&gt;
* Modify the CmakeLists.txt file in that directory to add your new source files to the list of source files.&lt;br /&gt;
* Build vtkski and make sure that your class compiles.&lt;br /&gt;
* Refer to [[Creating VTK Classes]] for important coding style tips.&lt;br /&gt;
* Add your class, with a brief description, to [[Class List for vtkski]].&lt;br /&gt;
&lt;br /&gt;
For help writing VTK classes, refer to the book &amp;quot;VTK User&#039;s Guide&amp;quot;, Part III, &amp;quot;Developer&#039;s Guide&amp;quot;.  There are a couple of copies in the lab.&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Vtkski_development&amp;diff=3851</id>
		<title>Vtkski development</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Vtkski_development&amp;diff=3851"/>
		<updated>2010-06-01T19:06:31Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* Compiling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Documentation for vtkski==&lt;br /&gt;
&lt;br /&gt;
On-line documentation for vtkski is available at http://mike.kin.ucalgary.ca/vtkski/ .&lt;br /&gt;
&lt;br /&gt;
Also, see [[vtkMeshModel]] which contains some examples of using the class vtkMeshModel .&lt;br /&gt;
&lt;br /&gt;
==Compiling and Installation==&lt;br /&gt;
&lt;br /&gt;
===Getting the source code===&lt;br /&gt;
&lt;br /&gt;
Get the sources from the subversion repository.&lt;br /&gt;
&lt;br /&gt;
 svn checkout https://mike.kin.ucalgary.ca/svn/bonelab/trunk/vtkski&lt;br /&gt;
&lt;br /&gt;
See the section on svn for more info: [[Subversion (SVN)]]&lt;br /&gt;
&lt;br /&gt;
===Compiling===&lt;br /&gt;
&lt;br /&gt;
From the vtkski project directory, create a build directory in trunk/Libraries and use cmake to configure the build:&lt;br /&gt;
&lt;br /&gt;
 mkdir build&lt;br /&gt;
 cd build&lt;br /&gt;
 cmake-gui ..&lt;br /&gt;
&lt;br /&gt;
The most important cmake variable is &amp;lt;tt&amp;gt;VTK_DIR&amp;lt;/tt&amp;gt;.  If you intend to also build the paraview plugins, then you must build vtkski against the internal version of VTK inside the paraview build directory.  (See [[Paraview development]] if you need to install ParaView).  As an example, on my system I set &amp;lt;tt&amp;gt;VTK_DIR&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;/home/eric/source/paraview-3.6.1/build/VTK&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Building Doxygen documentation===&lt;br /&gt;
&lt;br /&gt;
To build the Doxygen documentation, set the cmake variable BUILD_DOCUMENTATION to ON.  This variable is marked as advanced.  You will need to have installed Doxygen ( http://www.doxygen.org/ ) in order to build the documentation.&lt;br /&gt;
&lt;br /&gt;
The documentation is not automatically built with make (it takes a very long time to build).  Instead, you will need to explicitly request it, like this:&lt;br /&gt;
 make  vtkskiDoxygenDoc&lt;br /&gt;
&lt;br /&gt;
====Installing the Doxygen documentation on mike.kin====&lt;br /&gt;
&lt;br /&gt;
I recommend that you build the documentation with the cmake flag DOCUMENTATION_HTML_TARZ set to on (this variable is an advanced setting).  Then the build process will automatically make a tar ball of all the HTML documentation, build/Utilities/Doxygen/vtkski-html.tar.gz , which is easy to copy over to mik.kin (using FTP or scp or the mounted Data0 volume).&lt;br /&gt;
&lt;br /&gt;
The documentation needs to live in /Library/WebServer/Documents/vtkski .  The commands would look something like this&lt;br /&gt;
 tar xvzf vtkski-html.tar.gz&lt;br /&gt;
 sudo rm -rf /Library/WebServer/Documents/vtkski     # remove old docs&lt;br /&gt;
 sudo mv html /Library/WebServer/Documents/vtkski&lt;br /&gt;
 sudo chown -R root /Library/WebServer/Documents/vtkski&lt;br /&gt;
&lt;br /&gt;
==Checklist for new vtkski classes==&lt;br /&gt;
&lt;br /&gt;
* Select a category for your new class, for example &#039;IO&#039;, and put your source files in that directory.&lt;br /&gt;
* Modify the CmakeLists.txt file in that directory to add your new source files to the list of source files.&lt;br /&gt;
* Build vtkski and make sure that your class compiles.&lt;br /&gt;
* Refer to [[Creating VTK Classes]] for important coding style tips.&lt;br /&gt;
* Add your class, with a brief description, to [[Class List for vtkski]].&lt;br /&gt;
&lt;br /&gt;
For help writing VTK classes, refer to the book &amp;quot;VTK User&#039;s Guide&amp;quot;, Part III, &amp;quot;Developer&#039;s Guide&amp;quot;.  There are a couple of copies in the lab.&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=File:Tk-858-decarbon.patch&amp;diff=3849</id>
		<title>File:Tk-858-decarbon.patch</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=File:Tk-858-decarbon.patch&amp;diff=3849"/>
		<updated>2010-05-28T20:50:56Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Lab_Administration&amp;diff=3158</id>
		<title>Lab Administration</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Lab_Administration&amp;diff=3158"/>
		<updated>2009-08-28T17:43:00Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* Conferences 2009 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Lab_Administration&amp;diff=1875</id>
		<title>Lab Administration</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Lab_Administration&amp;diff=1875"/>
		<updated>2008-10-07T22:00:57Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Research Group Contact Info==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bone Imaging Laboratory (a.k.a. the fishbowl)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Kinesiology (KNB 2225)&amp;lt;br&amp;gt;&lt;br /&gt;
220-3188&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3D Morphometrics Laboratory&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Heritage Medical Research Building (HMRB 405)&amp;lt;br&amp;gt;&lt;br /&gt;
220-8411, 220-3131&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Steve Boyd&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   skboyd@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-4173&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   284-3550&amp;lt;br&amp;gt;&lt;br /&gt;
cell:	   978-3550&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Helen Buie&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   hbuie@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-2452&amp;lt;br&amp;gt;&lt;br /&gt;
cell:	   816-7943&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Graeme Campbell&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   gmcampbe@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   210-8965&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   210-1443&amp;lt;br&amp;gt;&lt;br /&gt;
cell:	   852-5554&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Josh Klinck&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   rjklinck@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-5450&amp;lt;br&amp;gt;&lt;br /&gt;
home1: 	   281-0032&amp;lt;br&amp;gt;&lt;br /&gt;
home2: 	   254-2992&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Erika Kristensen&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   ekristensen@kin.ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   210-8933&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   697-3850&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Josh MacNeil&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   jamacnei@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-2802&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   262-3299&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Michael Hofmann&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   mhofmann@student.ethz.ch&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Etienne Schwyter&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   eschwyter@kin.ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jerome Gire&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   jgire@kin.ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Yves Pauchard&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   yves.pauchard@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-3841&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   475-2454&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;James DuMont&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   jimmydt@gmail.com&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-3188&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   998-7555&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Patrick Meunier&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   pjymeuni@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-3188&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   521-0207&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Steve Sandercott&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   ssandercott@kin.ucalgary.ca, ssanderc@waterloo.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   210-8965&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   519-546-6218&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Chris Moore&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   cpmoore@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-3188&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   932-0776&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rochelle Nieuwenhuis&amp;lt;br&amp;gt;&lt;br /&gt;
email:     midnights_pet@hotmail.com&amp;lt;br&amp;gt;&lt;br /&gt;
office:    220-3188&amp;lt;br&amp;gt;&lt;br /&gt;
home:      243-2955&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;F&amp;amp;aacute;bio Ayres&amp;lt;br&amp;gt;&lt;br /&gt;
email:     fjayres@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
room:      KNB 2202&amp;lt;br&amp;gt;&lt;br /&gt;
office:    220-4687&amp;lt;br&amp;gt;&lt;br /&gt;
home:      532-3919&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kyle Nishiyama&amp;lt;br&amp;gt;&lt;br /&gt;
email:     kksnishi@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:    220-3853&amp;lt;br&amp;gt;&lt;br /&gt;
cell:      400-6315&amp;lt;br&amp;gt;&lt;br /&gt;
home:      455-0770&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conferences ==&lt;br /&gt;
&lt;br /&gt;
===Conferences 2006===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;International Bone Densitometry Workshop (IBDW)&#039;&#039;&#039;&lt;br /&gt;
:http://www.procom-i.co.jp/ibdw2006/frameindex.html&lt;br /&gt;
&lt;br /&gt;
:IBDW 2006&lt;br /&gt;
:Kyoto, Japan&lt;br /&gt;
:November 5-9, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due June 15, 2006&lt;br /&gt;
:pre-registration deadline: June 30th, 2006&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Osteoarthritis Research Society International (OARSI)&#039;&#039;&#039;&lt;br /&gt;
:http://www.oarsi.org/conference/06Congress/AbstractInfo.htm&lt;br /&gt;
&lt;br /&gt;
:OARSI 2006 World Congress&lt;br /&gt;
:Prague, Czech Republic&lt;br /&gt;
:December 7-10, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due:  July 31, 2006&lt;br /&gt;
:pre-registration deadline:  ?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;American Society of Bone and Mineral Research (ASBMR)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.asbmr.org/&lt;br /&gt;
&lt;br /&gt;
:ASBMR 28th annual meeting&lt;br /&gt;
:Philadelphia, PA, USA&lt;br /&gt;
:September 15-19, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due:  April 29, 2006 at 5pm CDT&lt;br /&gt;
:pre-registration deadline:  July 20, 2006&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;American Society of Biomechanics (ASB)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.asbweb.org/&lt;br /&gt;
&lt;br /&gt;
:30th annual meeting of the ASB&lt;br /&gt;
:Blacksburg, Virginia, USA&lt;br /&gt;
:September 6-9, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due: April 3, 2006&lt;br /&gt;
:pre-registration deadline:  July 1, 2006&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;International Society of Biomechanics (ISB)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.isbweb.org/&lt;br /&gt;
&lt;br /&gt;
:5th world congress of biomechanics&lt;br /&gt;
:Munich, Germany&lt;br /&gt;
:July 29-August 4, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due: February 15, 2006&lt;br /&gt;
:pre-registration deadline:  May 1, 2006&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;European Society of Biomechanics (ESB)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.esbiomech.org/&lt;br /&gt;
&lt;br /&gt;
:15th conference of the ESB (as part of 5th world congress of biomechanics)&lt;br /&gt;
:Munich, Germany&lt;br /&gt;
:July 29-August 4, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due: February 15, 2006&lt;br /&gt;
:pre-registration deadline:  May 1, 2006&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;American Society of Mechanical Engineers (ASME)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://divisions.asme.org/bed/&lt;br /&gt;
&lt;br /&gt;
:2006 Summer Bioengineering Conference&lt;br /&gt;
:Amelia Island, Florida, USA&lt;br /&gt;
:June 21-25, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due: January 27, 2006&lt;br /&gt;
:pre-registration deadline:  May 13, 2006&lt;br /&gt;
&lt;br /&gt;
===Conferences 2007===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Orthopaedic Research Society (ORS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ors.org/&lt;br /&gt;
&lt;br /&gt;
:The 6th combined meeting of the ORS&lt;br /&gt;
:Honolulu, Hawaii, USA&lt;br /&gt;
:October 20-24, 2007&lt;br /&gt;
&lt;br /&gt;
:abstracts due:  July 31, 2006&lt;br /&gt;
:pre-registration deadline:  ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IEEE Engineering in Medicine and Biology Society (EMBS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.embs.org/&lt;br /&gt;
&lt;br /&gt;
:29th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (IEEE EMBC)&lt;br /&gt;
:Lyon, France&lt;br /&gt;
:August 23-26, 2007&lt;br /&gt;
:http://www.embc07.ulster.ac.uk/&lt;br /&gt;
&lt;br /&gt;
:abstracts due: Monday April 2, 2007&lt;br /&gt;
:notification: June 15, 2007&lt;br /&gt;
:pre-registration deadline:  July 10, 2007&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Orthopaedic Research Society (ORS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ors.org/&lt;br /&gt;
&lt;br /&gt;
:The 53rd annual meeting of the ORS&lt;br /&gt;
:San Diego, California, USA&lt;br /&gt;
:February 11-14, 2007&lt;br /&gt;
&lt;br /&gt;
:abstracts due: Monday July 31, 2006&lt;br /&gt;
:pre-registration deadline:  ?&lt;br /&gt;
&lt;br /&gt;
===Conferences 2008===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The International Society for Optical Engineering (SPIE)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.spie.org&lt;br /&gt;
&lt;br /&gt;
:SPIE Annual Conference on Medical Imaging&lt;br /&gt;
:San Diego, California, USA&lt;br /&gt;
:February 16-21, 2008&lt;br /&gt;
&lt;br /&gt;
:abstracts due: Aug 6th, 2007&lt;br /&gt;
:manuscripts due: Jan 21st, 2008&lt;br /&gt;
:pre-registration deadline: ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Orthopaedic Research Society (ORS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ors.org/&lt;br /&gt;
&lt;br /&gt;
:The 54th annual meeting of the ORS&lt;br /&gt;
:San Francisco, California, USA&lt;br /&gt;
:March 2-5, 2008&lt;br /&gt;
&lt;br /&gt;
:abstracts due: Sept 5th, 2007&lt;br /&gt;
:pre-registration deadline:  ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IEEE Signal Processing Society (SPS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ieee.org/organizations/society/sp/&lt;br /&gt;
&lt;br /&gt;
:The 33rd IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP)&lt;br /&gt;
:Las Vegas, Nevada, USA&lt;br /&gt;
:March 31 - April 4, 2008&lt;br /&gt;
:http://www.icassp2008.org/&lt;br /&gt;
&lt;br /&gt;
:4-page paper due: Oct 7th, 2007&lt;br /&gt;
:notification: Dec 14th, 2007&lt;br /&gt;
:pre-registration deadline: Jan 18th, 2008&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IEEE Signal Processing Society (SPS) &amp;amp; IEEE Engineering in Medicine and Biology Society (EMBS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ieee.org/organizations/society/sp/&lt;br /&gt;
:http://www.embs.org/&lt;br /&gt;
&lt;br /&gt;
:5th IEEE International Symposium on Biomedical Imaging (ISBI 2008)&lt;br /&gt;
:Paris, France&lt;br /&gt;
:May 14 - May 17, 2008&lt;br /&gt;
:http://www.biomedicalimaging.org/&lt;br /&gt;
&lt;br /&gt;
:4-page paper due: Dec 7th, 2007&lt;br /&gt;
:notification: Feb 15th, 2008&lt;br /&gt;
:pre-registration deadline: March 14th, 2008&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ACM SIGGRAPH&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.siggraph.org&lt;br /&gt;
&lt;br /&gt;
:The 35th International Conference on Computer Graphics SIGGRAPH2008&lt;br /&gt;
:TBA&lt;br /&gt;
:TBA (probably August 2008)&lt;br /&gt;
&lt;br /&gt;
:abstracts due: TBA (probably January 2008)&lt;br /&gt;
:pre-registration deadline: ?&lt;br /&gt;
&lt;br /&gt;
===Conferences 2009===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The International Society for Optical Engineering (SPIE)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.spie.org&lt;br /&gt;
&lt;br /&gt;
:SPIE Annual Conference on Medical Imaging&lt;br /&gt;
:Orlando, Florida, USA&lt;br /&gt;
:February 7-12, 2009&lt;br /&gt;
&lt;br /&gt;
:abstracts due: July 28th, 2008&lt;br /&gt;
:manuscripts due: Jan 12, 2009&lt;br /&gt;
:pre-registration deadline: ?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IEEE Signal Processing Society (SPS) &amp;amp; IEEE Engineering in Medicine and Biology Society (EMBS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ieee.org/organizations/society/sp/&lt;br /&gt;
:http://www.embs.org/&lt;br /&gt;
&lt;br /&gt;
:6th IEEE International Symposium on Biomedical Imaging (ISBI 2009)&lt;br /&gt;
:Boston, Massachusetts&lt;br /&gt;
:June 29th - July 1st, 2009&lt;br /&gt;
:http://www.biomedicalimaging.org/&lt;br /&gt;
&lt;br /&gt;
:4-page paper due: Jan 19, 2009&lt;br /&gt;
:notification: March 30, 2009&lt;br /&gt;
:pre-registration deadline: May 1, 2009&lt;br /&gt;
&lt;br /&gt;
==Journal Club==&lt;br /&gt;
&lt;br /&gt;
===High Priority Journals===&lt;br /&gt;
&lt;br /&gt;
[http://www.jbmr-online.com/ Journal of Bone and Mineral Research ] (2002 6.329)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Steve&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com.ezproxy.lib.ucalgary.ca:2048/science?_ob=JournalURL&amp;amp;_cdi=4987&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=00f0a210c77f892821ee55e76b66cd13 Bone] (2005 3.572)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Erika &lt;br /&gt;
&lt;br /&gt;
[http://www.springerlink.com/(rexfj3u4l55pkznoycbqxke2)/app/home/journal.asp?referrer=parent&amp;amp;backto=linkingpublicationresults,1:100120,1 Calcified Tissue International] (2004 2.258)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh K.&lt;br /&gt;
&lt;br /&gt;
[http://www.springerlink.com/(yz0q05yc4dlalxruqy2j1b55)/app/home/journal.asp?referrer=parent&amp;amp;backto=linkingpublicationresults,1:102828,1 Osteoporosis International] (2003 3.799)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Graeme&lt;br /&gt;
&lt;br /&gt;
[http://ees.elsevier.com/mep/ Medical Engineering and Physics] (2002 0.769)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Yves&lt;br /&gt;
&lt;br /&gt;
===Medium Priority Journals===&lt;br /&gt;
&lt;br /&gt;
[http://www.bme.gatech.edu/abme/ Annals of Biomedical Engineering] (2002 1.573) &lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Erika&lt;br /&gt;
&lt;br /&gt;
[http://arjournals.annualreviews.org/loi/bioeng;jsessionid=o0AwcCow3M48 Annual Review of Biomedical Engineering] (2002 3.537)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh M.&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com/science?_ob=JournalURL&amp;amp;_cdi=5074&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=5628a498ee2c4c8c03998426a4fa02bd Journal of Biomechanics] (2002 1.889)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Graeme&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com.ezproxy.lib.ucalgary.ca:2048/science?_ob=JournalURL&amp;amp;_cdi=6979&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=4374752f61a4ccf8ae807c734ffb6867 Osteoarthritis and Cartilage] (2004 3.572)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Graeme&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com.ezproxy.lib.ucalgary.ca:2048/science?_ob=JournalURL&amp;amp;_cdi=6633&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=7a0210a3980a9920e6bdb9978594d646 Journal of Orthopedic Research] (2004: 2.720)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Erika&lt;br /&gt;
&lt;br /&gt;
[http://scitation.aip.org/ASMEJournals/Biomechanical/ Journal of Biomechanical Engineering] (2003 1.6)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh K.&lt;br /&gt;
&lt;br /&gt;
===Low Priority Journals===&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com/science?_ob=JournalURL&amp;amp;_cdi=4997&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=75f54fa07d8f798de0f3f0f3ccc8681a Clinical Biomechanics] (2002 0.996)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Graeme&lt;br /&gt;
&lt;br /&gt;
[http://www.tandf.co.uk/journals/online/1025-5842.asp Computer Methods in Biomechanics and Biomedical Engineering]&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Erika&lt;br /&gt;
&lt;br /&gt;
[http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=10 IEEE Transactions on Biomedical Engineering] (2002 1.665)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Yves&lt;br /&gt;
&lt;br /&gt;
[http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?puNumber=42 IEEE Transactions on Medical Imaging] (2002 2.911)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Yves&lt;br /&gt;
&lt;br /&gt;
==Laboratory Equipment List==&lt;br /&gt;
&lt;br /&gt;
===Computers===&lt;br /&gt;
&lt;br /&gt;
* Percy - Alphastation DS15, single processor, HP1955, OpenVMS (KNB2225)&lt;br /&gt;
* Thomas - Alphastation DS25, dual processor, HP1955, OpenVMS (KNB2227A)&lt;br /&gt;
* Henry - HP XW4300, 2GB RAM, Windows XP, HP2035 (KNB2225)&lt;br /&gt;
* Donald - HP XW9300 dual processor, HP2035, 8GB RAM, Linux (KNB2225)&lt;br /&gt;
* Douglas - HP XW9300 single processor, HP2035, 2GB RAM, Linux (KNB2225)&lt;br /&gt;
* Lady - ECI original PC, 2GB RAM, 18&amp;quot; NEC, Linux (KNB2225)&lt;br /&gt;
* Daisy - ECI original PC, 2GB RAM, 18&amp;quot; NEC, Linux (KNB2225)&lt;br /&gt;
* Dennis - ECI original PC, 2GB RAM, 18&amp;quot; NEC, Linux (Fabio Ayres, KNB 2202)&lt;br /&gt;
* CCIT - ECI original PC, 2GB RAM, 18&amp;quot; NEC, Linux (CCIT 125)&lt;br /&gt;
* Edward - HP DX5150, 2GB RAM, HP1906, Windows XP (Kyle Nishiyama)&lt;br /&gt;
* Emily - HP DX5150, 2GB RAM, HP1906, Windows XP (Helen Buie)&lt;br /&gt;
* Gordon - HP DX5150, 2GB RAM, HP1906, Windows XP (Erika Kristensen)&lt;br /&gt;
* Toby - HP DX5150, 2GB RAM, HP1906, Windows XP (Graeme Campbell)&lt;br /&gt;
* Murdoch - IBM T43 laptop, 2GB RAM, Windows XP (Steven Boyd)&lt;br /&gt;
* Temple - SunBlade 2500, 4GB RAM, Sun 18&amp;quot; monitor, Solaris 10 (CCIT 125)&lt;br /&gt;
* Oliver - HP DX5750, 2GB RAM, AMD DualCore 2GHz, HP1940, Windows XP (Yves Pauchard)&lt;br /&gt;
* Splatter - HP xw9400, 8GB RAM, 2x AMD DualCore Opteron, Nvidia Quadraplex (2GPUs), Windows XP and Ubuntu Linux (Eric Nodwell)&lt;br /&gt;
&lt;br /&gt;
===Other equipment===&lt;br /&gt;
&lt;br /&gt;
* Nikon D70 w/ 28-80 lens&lt;br /&gt;
* Crystal eyes glasses (2 pair) and emitter&lt;br /&gt;
* Viewsonic G220fb&lt;br /&gt;
* HP LaserJet 4650dn&lt;br /&gt;
* Disk array on Thomas, 7x 300GB SCSI&lt;br /&gt;
* Disk array on HPL-NT, 6x 300GB SCSI&lt;br /&gt;
&lt;br /&gt;
===Third Floor Freezer===&lt;br /&gt;
&lt;br /&gt;
* Combination: 15-28-01&lt;br /&gt;
&lt;br /&gt;
==Publications==&lt;br /&gt;
&lt;br /&gt;
Link to the the lab&#039;s: [[Publications]] section&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=File:Boyd_2006_evaluation_image_registration.pdf&amp;diff=2949</id>
		<title>File:Boyd 2006 evaluation image registration.pdf</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=File:Boyd_2006_evaluation_image_registration.pdf&amp;diff=2949"/>
		<updated>2008-07-23T17:49:20Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Help:Contents&amp;diff=2848</id>
		<title>Help:Contents</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Help:Contents&amp;diff=2848"/>
		<updated>2008-07-23T17:44:51Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* Creating a new page */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Basic Editing==&lt;br /&gt;
&lt;br /&gt;
Helpful links: &lt;br /&gt;
*[http://www.mediawiki.org/wiki/Documentation WikiMedia Documentation]&lt;br /&gt;
*[http://meta.wikimedia.org/wiki/Help:Contents WikiMedia Users Guide]&lt;br /&gt;
*[http://meta.wikimedia.org/wiki/Help:Editing WikiMedia Editing Tips]&lt;br /&gt;
&lt;br /&gt;
===Text Editing===&lt;br /&gt;
&lt;br /&gt;
The simplest page modifications for this site are editing the text of a page. The text of a page can be edited all at &lt;br /&gt;
once, or more practically section by section.  &lt;br /&gt;
====Editing a section:====&lt;br /&gt;
:*Click the adjacent edit tab at the top of the desired section.&lt;br /&gt;
:*The browser now displays a large text box in the center of the page.  Inside this box contains all of the text of the section.&lt;br /&gt;
::Note: There are several formatting conventions to be considered when adding text. These affect the margins, layout, bullets, &lt;br /&gt;
section organisation, etc. See the below section about Text Formatting for details.&lt;br /&gt;
:*Once the text has been modified, select &#039;Save Page&#039; below the text window.&lt;br /&gt;
:*The change are now saved and the new, modified version of this page will appear. &lt;br /&gt;
&lt;br /&gt;
Be careful whenever making any changes, because once the changes are saved, this becomes the new page. Therefore it is possible to &lt;br /&gt;
delete entire sections. (For recovery of old page versions, see the Recent Changes page).&lt;br /&gt;
&lt;br /&gt;
====Editing an entire page====&lt;br /&gt;
:*Similar to above, but select the &#039;edit&#039; tab at the top of the page. Now, the text for the entire page appears in the text editing&lt;br /&gt;
window.&lt;br /&gt;
:*This is useful for changing the arrangement and ordering of sections but is &#039;&#039;&#039;not&#039;&#039;&#039; recommended for specific text editing.&lt;br /&gt;
&lt;br /&gt;
Especially here, be careful when editing because the entire page could be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Creating a new page===&lt;br /&gt;
&lt;br /&gt;
Creating a new page is very simple. You just have to make a link to this new page from an existing page, and click the link. This will bring you to the editing window of this page, to which you can now add content.&lt;br /&gt;
*For example, let&#039;s make a new page [[here]].&lt;br /&gt;
::This was done by putting the word &amp;quot;here&amp;quot; inside double square brackets, &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[[here]]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
*Select &amp;quot;Save page&amp;quot;, then click &amp;quot;here&amp;quot;, which is now in &amp;lt;b style=&amp;quot;color:red&amp;quot;&amp;gt;red&amp;lt;/b&amp;gt;. Here I begin my new page.&lt;br /&gt;
&lt;br /&gt;
===Linking to an external page===&lt;br /&gt;
The only difference here is that we use single square brackets, or none at all. &lt;br /&gt;
*Let&#039;s link to Steve Boyd&#039;s homepage here: http://www.enme.ucalgary.ca/~skboyd/. Nothing special, just the put the URL within the text.&lt;br /&gt;
::&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://www.enme.ucalgary.ca/~skboyd/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
*In order to have a more convenient name appear as the link, use single square brackets and type the desired name of the link, seperated by a space, within the brackets. [http://www.enme.ucalgary.ca/~skboyd/ Steve&#039;s Homepage]&lt;br /&gt;
::&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[http://www.enme.ucalgary.ca/~skboyd/ Steve&#039;s Homepage]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Text Formatting===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re familiar with HTML conventions, you can apply &#039;&#039;&#039;most&#039;&#039;&#039; of these on a wiki page, however wiki has many of its own conventions.&lt;br /&gt;
The following table lists the text formatting operations applicable to this site.&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;80%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;What appears on the Page&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;What you type&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot; width=&amp;quot;40%&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Section Headers:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This can&#039;t really be demonstrated within a table, but click the edit tab for various sections to see examples of&lt;br /&gt;
sections.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
= Major Section=&lt;br /&gt;
&lt;br /&gt;
==Section==&lt;br /&gt;
&lt;br /&gt;
===Sub-Section===&lt;br /&gt;
&lt;br /&gt;
====Sub-Sub-Section====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&#039;&#039;&#039;Newline:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Typing on the&lt;br /&gt;
next line &lt;br /&gt;
will not&lt;br /&gt;
make a new line.&lt;br /&gt;
&lt;br /&gt;
But leaving one line empty does start&lt;br /&gt;
a new line.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To start a new line without making a new paragraph &amp;lt;br&amp;gt;&lt;br /&gt;
Now we have a new line here.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
Typing on the&lt;br /&gt;
next line &lt;br /&gt;
will not&lt;br /&gt;
make a new line.&lt;br /&gt;
&lt;br /&gt;
But leaving one line empty does start&lt;br /&gt;
a new line.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
To start a new line without making a new paragraph &amp;lt;br&amp;gt;&lt;br /&gt;
Now we have a new line here.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Lists&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Lists are started like this.&lt;br /&gt;
**They can also have sub lists&lt;br /&gt;
***and sub-sub lists.&lt;br /&gt;
Starting a regular line like this ends the list.&lt;br /&gt;
&lt;br /&gt;
*But you can break &amp;lt;BR&amp;gt; lines &amp;lt;br&amp;gt; within a list &amp;lt;br&amp;gt; like this.&lt;br /&gt;
*Then start a new line.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
*Lists are started like this.&lt;br /&gt;
**They can also have sub lists&lt;br /&gt;
***and sub-sub lists.&lt;br /&gt;
Starting a regular line like this ends the list.&lt;br /&gt;
&lt;br /&gt;
*But you can break &amp;lt;BR&amp;gt; lines &amp;lt;br&amp;gt; within a list &amp;lt;br&amp;gt; like this.&lt;br /&gt;
*Then start a new line.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Numbered Lists:&#039;&#039;&#039;&lt;br /&gt;
#Numbered lists can be created automatically.&lt;br /&gt;
#New number here&lt;br /&gt;
##I&#039;m a number within a number.&lt;br /&gt;
##Me too.&lt;br /&gt;
#Back to the original list.&lt;br /&gt;
The end of the list.&lt;br /&gt;
#Now here&#039;s a new list.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#Numbered lists can be created automatically.&lt;br /&gt;
#New number here&lt;br /&gt;
##I&#039;m a number within a number.&lt;br /&gt;
##Me too.&lt;br /&gt;
#Back to the original list.&lt;br /&gt;
The end of the list.&lt;br /&gt;
#Now here&#039;s a new list.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Indenting&#039;&#039;&#039;&lt;br /&gt;
:Starting a line with a colon&lt;br /&gt;
::or several colons, you can indent the line.&lt;br /&gt;
No indent here!&lt;br /&gt;
:::::I&#039;m super indented.&lt;br /&gt;
&lt;br /&gt;
:*Indenting, as well as bullets, and numbered lists can&lt;br /&gt;
::be combined.&lt;br /&gt;
:#I&#039;m number one&lt;br /&gt;
:#*I&#039;m almost one&lt;br /&gt;
:#I&#039;m only number two :(&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
:Starting a line with a colon&lt;br /&gt;
::or several colons, you can indent the line.&lt;br /&gt;
No indent here!&lt;br /&gt;
:::::I&#039;m super indented.&lt;br /&gt;
&lt;br /&gt;
:*Indenting, as well as bullets, and numbered lists can&lt;br /&gt;
::be combined.&lt;br /&gt;
:#I&#039;m number one&lt;br /&gt;
:#*I&#039;m almost one&lt;br /&gt;
:#I&#039;m only number two :(&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
 Starting every line with a &lt;br /&gt;
    space means that the text won&#039;t be formatted&lt;br /&gt;
 and should appear as typed.     But be careful, lines no &lt;br /&gt;
 longer wrap automatically.&lt;br /&gt;
 &lt;br /&gt;
 *This can be useful for preformatted text&lt;br /&gt;
    but also, is nice for code because it makes this nice box.&lt;br /&gt;
&lt;br /&gt;
Another way to make text within this box is to use &amp;lt;nowiki&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;/nowiki&amp;gt; &lt;br /&gt;
and &amp;lt;nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
We&#039;re inside a box.&lt;br /&gt;
*Ya, isn&#039;t this cool.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 Starting every line with a &lt;br /&gt;
    space means that the text won&#039;t be formatted&lt;br /&gt;
 and should appear as typed.     But be careful, lines no &lt;br /&gt;
 longer wrap automatically.&lt;br /&gt;
 &lt;br /&gt;
 *This can be useful for preformatted text&lt;br /&gt;
    but also, is nice for code because it makes this nice box.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another way to make text within this box is to use &amp;lt;nowiki&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
and &amp;lt;nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
We&#039;re inside a box.&lt;br /&gt;
*Ya, isn&#039;t this cool.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Tables===&lt;br /&gt;
&lt;br /&gt;
Tables, like the one above are very useful for organising information, or for specifying the layout of a page - placing text&lt;br /&gt;
and images in certain locations.&lt;br /&gt;
:(Click edit of the table above as an example)&lt;br /&gt;
&lt;br /&gt;
*A table begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;table&amp;gt; Table code &amp;lt;/table&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
*A row begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;tr&amp;gt; Row code &amp;lt;/tr&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
*A column begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;td&amp;gt; Column code &amp;lt;/td&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These are nested within each other: begin a table, row, column; end the column, row, table.&lt;br /&gt;
These are nested within each other: begin a table, row, column; end the column, row, table.&lt;br /&gt;
&lt;br /&gt;
*There are several options that may be set when starting a table, row, or column. The following is a list of the most useful.&lt;br /&gt;
:*&#039;&#039;&#039;border&#039;&#039;&#039; - Sets the thickness of the border for the entire table, or can be invisible.  &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;border=&amp;quot;n&amp;quot;&amp;lt;/code&amp;gt;, (n = {0,1,2,3,etc.})&lt;br /&gt;
:*&#039;&#039;&#039;align&#039;&#039;&#039; - sets the alignment of the table with respect to the page margins, or the text and objects within a cell. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;align=&amp;quot;center&amp;quot;&amp;lt;/code&amp;gt;, (or right, left).&lt;br /&gt;
:*&#039;&#039;&#039;valign&#039;&#039;&#039; - sets the vertical alignment of the text and objects within a cell. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;valign=&amp;quot;top&amp;quot; &amp;lt;/code&amp;gt;, (bottom, middle).&lt;br /&gt;
:*&#039;&#039;&#039;width, height&#039;&#039;&#039; - sets the width, height of the table and/or a column, row. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt; width=&amp;quot;90%&amp;quot; height=&amp;quot;450&#039;&amp;lt;/code&amp;gt;, (size can be in number of pixels, or as a percentage).&lt;br /&gt;
:*&#039;&#039;&#039;background&#039;&#039;&#039; - sets the background of a cell or table.  This can be either a picture or a solid color. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;bgcolor=&amp;quot;yellow&amp;quot; &amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;background=&amp;quot;mypicture.jpg&amp;quot; &amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Upload Help==&lt;br /&gt;
&lt;br /&gt;
#Once logged-on to the site, select the &#039;Upload file&#039; link within the toolbox on the left side-bar.&lt;br /&gt;
#&#039;Browse&#039; your system for the desired file, confirm its copyright compliance, and select Upload File.&lt;br /&gt;
#:By default, a page will be created for this file with the filename as its address and, regardless of its type, will be classified as an image.&lt;br /&gt;
#The file is now stored in the image section of the site and can be linked to from any other page within the site, as follows.&lt;br /&gt;
#:a) If the file is an image, then place the following code on a wiki page at the desired location of the image:&lt;br /&gt;
     &amp;lt;nowiki&amp;gt;[[Image:my_favorite_image.jpg|picture_position,ie_right,left,center]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
::(The picture location is not necessary and could be left blank. See the example below.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
::b) If the file is not an image, then insert the following code where the file is to be downloaded:&lt;br /&gt;
::(This code should most likely be inserted into the Documents page)&lt;br /&gt;
     &amp;lt;nowiki&amp;gt;[[Media:my_favorite_document.pdf| Document Link Name Displayed on Page]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*NB. For a list of all the files available for download from the wiki site, both images and none images, go to the &#039;&#039;&#039;Special Pages&#039;&#039;&#039; link in the toolbox and then  select &#039;&#039;&#039;Image list&#039;&#039;&#039;.  This page lists all the uploaded files on the site and they can all be downloaded from here.&lt;br /&gt;
&lt;br /&gt;
===Examples ===&lt;br /&gt;
*click the adjacent &#039;edit&#039; tabs to view the code for the examples.&lt;br /&gt;
&lt;br /&gt;
====Documents ====&lt;br /&gt;
&lt;br /&gt;
Now let&#039;s provide a pdf document: [[Media:My_favorite_pdf.pdf| I&#039;m a pdf document]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Images====&lt;br /&gt;
&lt;br /&gt;
Let&#039;s put an image of Steve here:&lt;br /&gt;
[[Image:Steve Boyd money.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*NB. Note how a link is automatically created to the picture&#039;s actual location within the image section - click on the image itself to see.&lt;br /&gt;
&lt;br /&gt;
==Site Administration==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Site Creation===&lt;br /&gt;
&lt;br /&gt;
The following explains how this wiki site was created. The intention is that in the event the site is lost, so long as the text from this page &lt;br /&gt;
is backed-up somewhere, the site could be recreated. Also, just to complete the documentation, I have tried to outline all the steps that &lt;br /&gt;
I took and explanations of parts that I had problems with while developing this site.&lt;br /&gt;
&lt;br /&gt;
*The &amp;quot;wiki&amp;quot; interface of this site was developed by MediaWiki and this software runs in the background, on the server at all times.  It &lt;br /&gt;
is this interface that allows users to edit pages, upload documents, and change a variety of settings, which is all stored in a database&lt;br /&gt;
on the server.&lt;br /&gt;
*The database that is compatible with MediaWiki is mySQL. This is a standard database that is one of the packages included with the latest&lt;br /&gt;
Fedora Core for linux.  This database caused several problems during the development of the first versions of the wiki site, however the &lt;br /&gt;
version mySQL 4.1 has so far not caused any similar problems.&lt;br /&gt;
:*It is useful to know that all the data from the site is stored on a mySQL database on the server, however there should be no need to ever&lt;br /&gt;
directly access this database, or try to edit or modify it directly.  &lt;br /&gt;
:*The one exception to this is for setting up the system operator (sysop) or bureaucrat privileges. (more on this later)&lt;br /&gt;
&lt;br /&gt;
====Install Instructions====&lt;br /&gt;
&lt;br /&gt;
Check out [http://meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide:_Installation MediaWiki Installation] &lt;br /&gt;
*Download the latest, stable version of mediawiki from [http://wikipedia.sourceforge.net/| wikipedia.sourcforge].&lt;br /&gt;
::The MediaWiki FAQs are &#039;&#039;&#039;excellent&#039;&#039;&#039;, and should provide clear and thorough instructions for downloading and installing the program.&lt;br /&gt;
(However here is a quick summary)&lt;br /&gt;
*Read the &#039;Install.txt&#039; file for installation instructions and system requirements.&lt;br /&gt;
*The system requirements for the server (which could really be any computer set up appropriately, although &#039;&#039;&#039;preferably linux&#039;&#039;&#039;) are:&lt;br /&gt;
:*Apache web server&lt;br /&gt;
:*mySQL database&lt;br /&gt;
:*PHP-mySQL package&lt;br /&gt;
:(If running a new version of Fedora Core, all of these can be installed as packages from the original boot disks).&lt;br /&gt;
*Uncompress and untar the mediawiki folder.  It is advised to rename this folder something convenient, like wiki or mediawiki.&lt;br /&gt;
*Change the read/write access of the config directory to be readable by all.  This folder contains the php script for the initial configuration.&lt;br /&gt;
::&amp;lt;code&amp;gt;chmod a+w config&amp;lt;/code&amp;gt;&lt;br /&gt;
*The next step is to browse into this folder from an internet browser.  If this is run off of your linux box, you will need to find the folder open to the world &lt;br /&gt;
via http and move the entire mediawiki folder here.  When I did it, it was:&lt;br /&gt;
::/var/www/html/&lt;br /&gt;
:*Once the folder is there, browse &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://my_ip_address/mediawiki&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.  The installation script should start and you can now fill in the boxes, &lt;br /&gt;
initializing the site and the database  which will store all the site data.&lt;br /&gt;
&lt;br /&gt;
*The on-screen instructions are rather self-explanatory and after filling in and confirming the necessary information, the site should be created.&lt;br /&gt;
*On the new page, the instructions will say to move the &#039;LocalSettings.php&#039; file into your main mediawik folder and then delete the config directory.&lt;br /&gt;
::Once this is done, the &#039;LocalSettings.php&#039; file now becomes the default script that loads the mainpage of the wiki site.&lt;br /&gt;
&lt;br /&gt;
====LocalSettings.php====&lt;br /&gt;
&lt;br /&gt;
This becomes the most important and useful file to change the apperance and customize the wiki site. Everything else can be done through the interface&lt;br /&gt;
of the wiki site itself. Within this file, one can change the navigation bar on the left margin, the logo appearing in the upper left corner, the login restrictions, the name &lt;br /&gt;
of the site, the ability to upload files, the name of the site, the contact information and address of the site administrator, among others.&lt;br /&gt;
&lt;br /&gt;
*Navigation bar - For a detailed explanation on editing the Navigation bar, see [http://meta.wikimedia.org/wiki/MediaWiki_FAQ#How_do_I_change_the_contents_of_the_navigation_toolbar.3F MediaWiki Navigation Help]&lt;br /&gt;
:Summary:&lt;br /&gt;
:*The following array should be moved to LocalSettings, from &amp;lt;code&amp;gt;includes/DefaultSettings.php &amp;lt;/code&amp;gt;. It specifies the pages which hold the text to be displayed in the navigation bar and the pages which hold the link of where each navigation bar tab points to. In other words, what appears here, in this array is not necessarily what will appear in the navigation bar; they are pages on the wiki site (or pointers within the database) to where this information is stored.&lt;br /&gt;
&lt;br /&gt;
 $wgNavigationLinks = array (&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;mainpage&#039;,	&#039;href&#039;=&amp;gt;&#039;mainpage&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;portal&#039;,	&#039;href&#039;=&amp;gt;&#039;portal-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;currentevents&#039;, &#039;href&#039;=&amp;gt;&#039;currentevents-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;recentchanges&#039;, &#039;href&#039;=&amp;gt;&#039;recentchanges-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;randompage&#039;,	&#039;href&#039;=&amp;gt;&#039;randompage-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;help&#039;, 		&#039;href&#039;=&amp;gt;&#039;helppage&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;sitesupport&#039;,	&#039;href&#039;=&amp;gt;&#039;sitesupport-url&#039; ),&lt;br /&gt;
 );&lt;br /&gt;
&lt;br /&gt;
For example, one line in the navigation array for this site is:&lt;br /&gt;
::&amp;lt;code&amp;gt;array( &#039;text&#039;=&amp;gt;&#039;howto&#039;,	&#039;href&#039;=&amp;gt;&#039;howto-url&#039; ) &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If this was a new page you wanted to add, you&#039;d have to log in as a SYSOP and then in the&lt;br /&gt;
browser URL type &amp;lt;code&amp;gt;bonewiki.ucalgary.ca/~skboyd/wiki/index.php/MediaWiki:howto&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*On the wiki site, there is a page &amp;lt;code&amp;gt;..../index.php/MediaWiki:howto&amp;lt;/code&amp;gt; which holds the text to be displayed on the navigation bar. The text on this page is:&lt;br /&gt;
::&amp;lt;code&amp;gt; How To&#039;s&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*There&#039;s another page on this wiki site, &amp;lt;code&amp;gt;..../index.php/MediaWiki:howto-url&amp;lt;/code&amp;gt; which holds the page address of this navigation link&#039;s target.&lt;br /&gt;
::&amp;lt;code&amp;gt; How To &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*The next step is to add the desired text and target to the pages on the wiki site, that are mentioned in the navigation array.  These will initially be empty pages and must be edited for the navigations to work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Logo - This is the picture which appears in the top left corner throughout the site. At all times, this acts as a link returning to the mainpage. To customize this logo, replace the location of the logo picture in the following line of LocalSettings:&lt;br /&gt;
::&amp;lt;code&amp;gt;$wgLogo     = &amp;quot;$wgScriptPath/myfavoritepicture.gif&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
:(Could use another file type for the image, such as .png).&lt;br /&gt;
&lt;br /&gt;
*Enable File Uploading - To enable file uploading, uncomment the following line, in LocalSettings. &lt;br /&gt;
::&amp;lt;code&amp;gt;$wgDisableUploads   = false;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
: - Then change the permissions on the image directory so that it is writable.&lt;br /&gt;
::&amp;lt;code&amp;gt;$chmod a+w images &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Adding Users===&lt;br /&gt;
Depending on the access restrictions specified in the &#039;LocalSettings.php&#039;, the site can be designed such that anybody can access and edit any of the pages, or only registered users may log on to the site. Furthermore, the site can be configured such that only the &#039;sysop&#039; of the site can create new accounts.  These restrictions are set within the LocalSettings file. (See above for details).&lt;br /&gt;
&lt;br /&gt;
:Note: This site has been configured so that only &#039;sysop&#039; can create new accounts.&lt;br /&gt;
&lt;br /&gt;
*Once logged in, the &#039;sysop&#039; can select &amp;quot;Create an account or log in&amp;quot; from the &amp;quot;Special Pages&amp;quot; link of the toolbox, along the left margin.  Here, the sysop creates a username and can then automatically email the new user a temporary password for the site. (This email will have the return address of the site administrator, as specified in LocalSettings.php.&lt;br /&gt;
&lt;br /&gt;
*Unfortunately, there is no easy way of deleting a user account. A user can be manually removed from the mySQL database, however this will most likely cause problems with other tables referring to this user or deleted row. This should only be done if you really understand mySQL. &lt;br /&gt;
:*The best way to remove a user, is for the sysop to either block them, or rename their account/ change their password.&lt;br /&gt;
&lt;br /&gt;
*A user can be given &#039;sysop&#039; and &#039;bureaucrat&#039; priveleges by an existing sysop, from a link on the sysop&#039;s &amp;quot;Special Pages&amp;quot;. (The original sysop is created during site initialization).&lt;br /&gt;
 &lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Wiki software successfully installed.&lt;br /&gt;
&lt;br /&gt;
Please see [http://meta.wikipedia.org/wiki/MediaWiki_i18n documentation on customizing the interface]&lt;br /&gt;
and the [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide User&#039;s Guide] for usage and configuration help.&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Main_Page&amp;diff=1846</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Main_Page&amp;diff=1846"/>
		<updated>2008-07-23T17:44:11Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&amp;lt;b&amp;gt;&amp;lt;font size=&amp;quot;+3&amp;quot;&amp;gt;Bone Imaging Laboratory Wiki&amp;lt;/font&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table width=&amp;quot;97%&amp;quot; border=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt; &lt;br /&gt;
&amp;lt;td width=&amp;quot;450&amp;quot; align=&amp;quot;left&amp;quot; valign=&amp;quot;middle&amp;quot; bgcolor=&amp;quot;#ccff66&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt; Wiki Concept&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;P&amp;gt;The idea of the &#039;Wiki&#039; site is that any authorized user, in this case a member of the lab, can see and edit any of the pages on this site. &lt;br /&gt;
Also, there is a document section where useful documents can uploaded or downloaded by anyone in the group.&amp;lt;/P&amp;gt; &lt;br /&gt;
&amp;lt;p&amp;gt;The purpose of this is to facilitate&lt;br /&gt;
information exchange within the lab and keep up-to-date HowTo and User Manuals for all lab procedures.&amp;lt;/P&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;td bgcolor=&amp;quot;#ccff05&amp;quot;&amp;gt;[[Image:Smaller_bone_loss.jpg]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At this time, the major sections of this site are the [[How To&#039;s]] pages, for FAQs about various lab processes, and the [[Documents]] section where relevant documents have been uploaded.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is a user-based site, to be edited and improved by all users - feel free to make any modifications you see fit!&lt;br /&gt;
*See the [[Help:Contents| Help]] section for help using and adding to this site.  The [[Sandbox]] page has been added as a place to practice making changes, adding whatever you feel, to familiarize yourself with the &#039;Wiki&#039; environment.&lt;br /&gt;
*User accounts have been set up for everyone within the lab.  To see any pages other than this &#039;Main Page&#039; or to edit any pages, you must login - click the Log-in tab at the top right of page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have any new problems or unanswered questions, post them on the [[Current Problems]] page.  Here, group members can post and discuss current problems.  Once problems have been solved, they should be converted into a &amp;quot;How To&amp;quot; format and placed appropriately within the How To section.&lt;br /&gt;
&lt;br /&gt;
[[Publications]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;table align=&amp;quot;left&amp;quot; width=&amp;quot;85%&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;left&amp;quot; valign=&amp;quot;middle&amp;quot; &amp;gt;&lt;br /&gt;
A link back to: [http://www.enme.ucalgary.ca/~skboyd/ Steve Boyd&#039;s homepage]&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td align=&amp;quot;left&amp;quot; valign=&amp;quot;middle&amp;quot;&amp;gt; To return to the Lab home page: [http://www.enme.ucalgary.ca/research/microct/ Biomedical Imaging Metrics Homepage]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Here1&amp;diff=2933</id>
		<title>Here1</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Here1&amp;diff=2933"/>
		<updated>2008-07-23T16:51:05Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: Here1 moved to Publications&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Publications]]&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Help:Contents&amp;diff=1802</id>
		<title>Help:Contents</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Help:Contents&amp;diff=1802"/>
		<updated>2008-07-23T16:50:08Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* Creating a new page */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Basic Editing==&lt;br /&gt;
&lt;br /&gt;
Helpful links: &lt;br /&gt;
*[http://www.mediawiki.org/wiki/Documentation WikiMedia Documentation]&lt;br /&gt;
*[http://meta.wikimedia.org/wiki/Help:Contents WikiMedia Users Guide]&lt;br /&gt;
*[http://meta.wikimedia.org/wiki/Help:Editing WikiMedia Editing Tips]&lt;br /&gt;
&lt;br /&gt;
===Text Editing===&lt;br /&gt;
&lt;br /&gt;
The simplest page modifications for this site are editing the text of a page. The text of a page can be edited all at &lt;br /&gt;
once, or more practically section by section.  &lt;br /&gt;
====Editing a section:====&lt;br /&gt;
:*Click the adjacent edit tab at the top of the desired section.&lt;br /&gt;
:*The browser now displays a large text box in the center of the page.  Inside this box contains all of the text of the section.&lt;br /&gt;
::Note: There are several formatting conventions to be considered when adding text. These affect the margins, layout, bullets, &lt;br /&gt;
section organisation, etc. See the below section about Text Formatting for details.&lt;br /&gt;
:*Once the text has been modified, select &#039;Save Page&#039; below the text window.&lt;br /&gt;
:*The change are now saved and the new, modified version of this page will appear. &lt;br /&gt;
&lt;br /&gt;
Be careful whenever making any changes, because once the changes are saved, this becomes the new page. Therefore it is possible to &lt;br /&gt;
delete entire sections. (For recovery of old page versions, see the Recent Changes page).&lt;br /&gt;
&lt;br /&gt;
====Editing an entire page====&lt;br /&gt;
:*Similar to above, but select the &#039;edit&#039; tab at the top of the page. Now, the text for the entire page appears in the text editing&lt;br /&gt;
window.&lt;br /&gt;
:*This is useful for changing the arrangement and ordering of sections but is &#039;&#039;&#039;not&#039;&#039;&#039; recommended for specific text editing.&lt;br /&gt;
&lt;br /&gt;
Especially here, be careful when editing because the entire page could be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Creating a new page===&lt;br /&gt;
&lt;br /&gt;
Creating a new page is very simple. You just have to make a link to this new page from an existing page, and click the link. This will bring you to the editing window of this page, to which you can now add content.&lt;br /&gt;
*For example, let&#039;s make a new page [[here]].&lt;br /&gt;
::This was done by putting the word &amp;quot;here&amp;quot; inside double square brackets, &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[[here]]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
*Select &amp;quot;Save page&amp;quot;, then click &amp;quot;here&amp;quot;, which is now in &amp;lt;b style=&amp;quot;color:red&amp;quot;&amp;gt;red&amp;lt;/b&amp;gt;. Here I begin my new page.&lt;br /&gt;
[[here1]]&lt;br /&gt;
&lt;br /&gt;
===Linking to an external page===&lt;br /&gt;
The only difference here is that we use single square brackets, or none at all. &lt;br /&gt;
*Let&#039;s link to Steve Boyd&#039;s homepage here: http://www.enme.ucalgary.ca/~skboyd/. Nothing special, just the put the URL within the text.&lt;br /&gt;
::&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://www.enme.ucalgary.ca/~skboyd/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
*In order to have a more convenient name appear as the link, use single square brackets and type the desired name of the link, seperated by a space, within the brackets. [http://www.enme.ucalgary.ca/~skboyd/ Steve&#039;s Homepage]&lt;br /&gt;
::&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[http://www.enme.ucalgary.ca/~skboyd/ Steve&#039;s Homepage]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Text Formatting===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re familiar with HTML conventions, you can apply &#039;&#039;&#039;most&#039;&#039;&#039; of these on a wiki page, however wiki has many of its own conventions.&lt;br /&gt;
The following table lists the text formatting operations applicable to this site.&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;80%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;What appears on the Page&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;What you type&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot; width=&amp;quot;40%&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Section Headers:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This can&#039;t really be demonstrated within a table, but click the edit tab for various sections to see examples of&lt;br /&gt;
sections.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
= Major Section=&lt;br /&gt;
&lt;br /&gt;
==Section==&lt;br /&gt;
&lt;br /&gt;
===Sub-Section===&lt;br /&gt;
&lt;br /&gt;
====Sub-Sub-Section====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&#039;&#039;&#039;Newline:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Typing on the&lt;br /&gt;
next line &lt;br /&gt;
will not&lt;br /&gt;
make a new line.&lt;br /&gt;
&lt;br /&gt;
But leaving one line empty does start&lt;br /&gt;
a new line.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To start a new line without making a new paragraph &amp;lt;br&amp;gt;&lt;br /&gt;
Now we have a new line here.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
Typing on the&lt;br /&gt;
next line &lt;br /&gt;
will not&lt;br /&gt;
make a new line.&lt;br /&gt;
&lt;br /&gt;
But leaving one line empty does start&lt;br /&gt;
a new line.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
To start a new line without making a new paragraph &amp;lt;br&amp;gt;&lt;br /&gt;
Now we have a new line here.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Lists&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Lists are started like this.&lt;br /&gt;
**They can also have sub lists&lt;br /&gt;
***and sub-sub lists.&lt;br /&gt;
Starting a regular line like this ends the list.&lt;br /&gt;
&lt;br /&gt;
*But you can break &amp;lt;BR&amp;gt; lines &amp;lt;br&amp;gt; within a list &amp;lt;br&amp;gt; like this.&lt;br /&gt;
*Then start a new line.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
*Lists are started like this.&lt;br /&gt;
**They can also have sub lists&lt;br /&gt;
***and sub-sub lists.&lt;br /&gt;
Starting a regular line like this ends the list.&lt;br /&gt;
&lt;br /&gt;
*But you can break &amp;lt;BR&amp;gt; lines &amp;lt;br&amp;gt; within a list &amp;lt;br&amp;gt; like this.&lt;br /&gt;
*Then start a new line.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Numbered Lists:&#039;&#039;&#039;&lt;br /&gt;
#Numbered lists can be created automatically.&lt;br /&gt;
#New number here&lt;br /&gt;
##I&#039;m a number within a number.&lt;br /&gt;
##Me too.&lt;br /&gt;
#Back to the original list.&lt;br /&gt;
The end of the list.&lt;br /&gt;
#Now here&#039;s a new list.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#Numbered lists can be created automatically.&lt;br /&gt;
#New number here&lt;br /&gt;
##I&#039;m a number within a number.&lt;br /&gt;
##Me too.&lt;br /&gt;
#Back to the original list.&lt;br /&gt;
The end of the list.&lt;br /&gt;
#Now here&#039;s a new list.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Indenting&#039;&#039;&#039;&lt;br /&gt;
:Starting a line with a colon&lt;br /&gt;
::or several colons, you can indent the line.&lt;br /&gt;
No indent here!&lt;br /&gt;
:::::I&#039;m super indented.&lt;br /&gt;
&lt;br /&gt;
:*Indenting, as well as bullets, and numbered lists can&lt;br /&gt;
::be combined.&lt;br /&gt;
:#I&#039;m number one&lt;br /&gt;
:#*I&#039;m almost one&lt;br /&gt;
:#I&#039;m only number two :(&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
:Starting a line with a colon&lt;br /&gt;
::or several colons, you can indent the line.&lt;br /&gt;
No indent here!&lt;br /&gt;
:::::I&#039;m super indented.&lt;br /&gt;
&lt;br /&gt;
:*Indenting, as well as bullets, and numbered lists can&lt;br /&gt;
::be combined.&lt;br /&gt;
:#I&#039;m number one&lt;br /&gt;
:#*I&#039;m almost one&lt;br /&gt;
:#I&#039;m only number two :(&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
 Starting every line with a &lt;br /&gt;
    space means that the text won&#039;t be formatted&lt;br /&gt;
 and should appear as typed.     But be careful, lines no &lt;br /&gt;
 longer wrap automatically.&lt;br /&gt;
 &lt;br /&gt;
 *This can be useful for preformatted text&lt;br /&gt;
    but also, is nice for code because it makes this nice box.&lt;br /&gt;
&lt;br /&gt;
Another way to make text within this box is to use &amp;lt;nowiki&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;/nowiki&amp;gt; &lt;br /&gt;
and &amp;lt;nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
We&#039;re inside a box.&lt;br /&gt;
*Ya, isn&#039;t this cool.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 Starting every line with a &lt;br /&gt;
    space means that the text won&#039;t be formatted&lt;br /&gt;
 and should appear as typed.     But be careful, lines no &lt;br /&gt;
 longer wrap automatically.&lt;br /&gt;
 &lt;br /&gt;
 *This can be useful for preformatted text&lt;br /&gt;
    but also, is nice for code because it makes this nice box.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another way to make text within this box is to use &amp;lt;nowiki&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
and &amp;lt;nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
We&#039;re inside a box.&lt;br /&gt;
*Ya, isn&#039;t this cool.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Tables===&lt;br /&gt;
&lt;br /&gt;
Tables, like the one above are very useful for organising information, or for specifying the layout of a page - placing text&lt;br /&gt;
and images in certain locations.&lt;br /&gt;
:(Click edit of the table above as an example)&lt;br /&gt;
&lt;br /&gt;
*A table begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;table&amp;gt; Table code &amp;lt;/table&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
*A row begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;tr&amp;gt; Row code &amp;lt;/tr&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
*A column begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;td&amp;gt; Column code &amp;lt;/td&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These are nested within each other: begin a table, row, column; end the column, row, table.&lt;br /&gt;
These are nested within each other: begin a table, row, column; end the column, row, table.&lt;br /&gt;
&lt;br /&gt;
*There are several options that may be set when starting a table, row, or column. The following is a list of the most useful.&lt;br /&gt;
:*&#039;&#039;&#039;border&#039;&#039;&#039; - Sets the thickness of the border for the entire table, or can be invisible.  &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;border=&amp;quot;n&amp;quot;&amp;lt;/code&amp;gt;, (n = {0,1,2,3,etc.})&lt;br /&gt;
:*&#039;&#039;&#039;align&#039;&#039;&#039; - sets the alignment of the table with respect to the page margins, or the text and objects within a cell. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;align=&amp;quot;center&amp;quot;&amp;lt;/code&amp;gt;, (or right, left).&lt;br /&gt;
:*&#039;&#039;&#039;valign&#039;&#039;&#039; - sets the vertical alignment of the text and objects within a cell. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;valign=&amp;quot;top&amp;quot; &amp;lt;/code&amp;gt;, (bottom, middle).&lt;br /&gt;
:*&#039;&#039;&#039;width, height&#039;&#039;&#039; - sets the width, height of the table and/or a column, row. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt; width=&amp;quot;90%&amp;quot; height=&amp;quot;450&#039;&amp;lt;/code&amp;gt;, (size can be in number of pixels, or as a percentage).&lt;br /&gt;
:*&#039;&#039;&#039;background&#039;&#039;&#039; - sets the background of a cell or table.  This can be either a picture or a solid color. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;bgcolor=&amp;quot;yellow&amp;quot; &amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;background=&amp;quot;mypicture.jpg&amp;quot; &amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Upload Help==&lt;br /&gt;
&lt;br /&gt;
#Once logged-on to the site, select the &#039;Upload file&#039; link within the toolbox on the left side-bar.&lt;br /&gt;
#&#039;Browse&#039; your system for the desired file, confirm its copyright compliance, and select Upload File.&lt;br /&gt;
#:By default, a page will be created for this file with the filename as its address and, regardless of its type, will be classified as an image.&lt;br /&gt;
#The file is now stored in the image section of the site and can be linked to from any other page within the site, as follows.&lt;br /&gt;
#:a) If the file is an image, then place the following code on a wiki page at the desired location of the image:&lt;br /&gt;
     &amp;lt;nowiki&amp;gt;[[Image:my_favorite_image.jpg|picture_position,ie_right,left,center]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
::(The picture location is not necessary and could be left blank. See the example below.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
::b) If the file is not an image, then insert the following code where the file is to be downloaded:&lt;br /&gt;
::(This code should most likely be inserted into the Documents page)&lt;br /&gt;
     &amp;lt;nowiki&amp;gt;[[Media:my_favorite_document.pdf| Document Link Name Displayed on Page]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*NB. For a list of all the files available for download from the wiki site, both images and none images, go to the &#039;&#039;&#039;Special Pages&#039;&#039;&#039; link in the toolbox and then  select &#039;&#039;&#039;Image list&#039;&#039;&#039;.  This page lists all the uploaded files on the site and they can all be downloaded from here.&lt;br /&gt;
&lt;br /&gt;
===Examples ===&lt;br /&gt;
*click the adjacent &#039;edit&#039; tabs to view the code for the examples.&lt;br /&gt;
&lt;br /&gt;
====Documents ====&lt;br /&gt;
&lt;br /&gt;
Now let&#039;s provide a pdf document: [[Media:My_favorite_pdf.pdf| I&#039;m a pdf document]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Images====&lt;br /&gt;
&lt;br /&gt;
Let&#039;s put an image of Steve here:&lt;br /&gt;
[[Image:Steve Boyd money.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*NB. Note how a link is automatically created to the picture&#039;s actual location within the image section - click on the image itself to see.&lt;br /&gt;
&lt;br /&gt;
==Site Administration==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Site Creation===&lt;br /&gt;
&lt;br /&gt;
The following explains how this wiki site was created. The intention is that in the event the site is lost, so long as the text from this page &lt;br /&gt;
is backed-up somewhere, the site could be recreated. Also, just to complete the documentation, I have tried to outline all the steps that &lt;br /&gt;
I took and explanations of parts that I had problems with while developing this site.&lt;br /&gt;
&lt;br /&gt;
*The &amp;quot;wiki&amp;quot; interface of this site was developed by MediaWiki and this software runs in the background, on the server at all times.  It &lt;br /&gt;
is this interface that allows users to edit pages, upload documents, and change a variety of settings, which is all stored in a database&lt;br /&gt;
on the server.&lt;br /&gt;
*The database that is compatible with MediaWiki is mySQL. This is a standard database that is one of the packages included with the latest&lt;br /&gt;
Fedora Core for linux.  This database caused several problems during the development of the first versions of the wiki site, however the &lt;br /&gt;
version mySQL 4.1 has so far not caused any similar problems.&lt;br /&gt;
:*It is useful to know that all the data from the site is stored on a mySQL database on the server, however there should be no need to ever&lt;br /&gt;
directly access this database, or try to edit or modify it directly.  &lt;br /&gt;
:*The one exception to this is for setting up the system operator (sysop) or bureaucrat privileges. (more on this later)&lt;br /&gt;
&lt;br /&gt;
====Install Instructions====&lt;br /&gt;
&lt;br /&gt;
Check out [http://meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide:_Installation MediaWiki Installation] &lt;br /&gt;
*Download the latest, stable version of mediawiki from [http://wikipedia.sourceforge.net/| wikipedia.sourcforge].&lt;br /&gt;
::The MediaWiki FAQs are &#039;&#039;&#039;excellent&#039;&#039;&#039;, and should provide clear and thorough instructions for downloading and installing the program.&lt;br /&gt;
(However here is a quick summary)&lt;br /&gt;
*Read the &#039;Install.txt&#039; file for installation instructions and system requirements.&lt;br /&gt;
*The system requirements for the server (which could really be any computer set up appropriately, although &#039;&#039;&#039;preferably linux&#039;&#039;&#039;) are:&lt;br /&gt;
:*Apache web server&lt;br /&gt;
:*mySQL database&lt;br /&gt;
:*PHP-mySQL package&lt;br /&gt;
:(If running a new version of Fedora Core, all of these can be installed as packages from the original boot disks).&lt;br /&gt;
*Uncompress and untar the mediawiki folder.  It is advised to rename this folder something convenient, like wiki or mediawiki.&lt;br /&gt;
*Change the read/write access of the config directory to be readable by all.  This folder contains the php script for the initial configuration.&lt;br /&gt;
::&amp;lt;code&amp;gt;chmod a+w config&amp;lt;/code&amp;gt;&lt;br /&gt;
*The next step is to browse into this folder from an internet browser.  If this is run off of your linux box, you will need to find the folder open to the world &lt;br /&gt;
via http and move the entire mediawiki folder here.  When I did it, it was:&lt;br /&gt;
::/var/www/html/&lt;br /&gt;
:*Once the folder is there, browse &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://my_ip_address/mediawiki&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.  The installation script should start and you can now fill in the boxes, &lt;br /&gt;
initializing the site and the database  which will store all the site data.&lt;br /&gt;
&lt;br /&gt;
*The on-screen instructions are rather self-explanatory and after filling in and confirming the necessary information, the site should be created.&lt;br /&gt;
*On the new page, the instructions will say to move the &#039;LocalSettings.php&#039; file into your main mediawik folder and then delete the config directory.&lt;br /&gt;
::Once this is done, the &#039;LocalSettings.php&#039; file now becomes the default script that loads the mainpage of the wiki site.&lt;br /&gt;
&lt;br /&gt;
====LocalSettings.php====&lt;br /&gt;
&lt;br /&gt;
This becomes the most important and useful file to change the apperance and customize the wiki site. Everything else can be done through the interface&lt;br /&gt;
of the wiki site itself. Within this file, one can change the navigation bar on the left margin, the logo appearing in the upper left corner, the login restrictions, the name &lt;br /&gt;
of the site, the ability to upload files, the name of the site, the contact information and address of the site administrator, among others.&lt;br /&gt;
&lt;br /&gt;
*Navigation bar - For a detailed explanation on editing the Navigation bar, see [http://meta.wikimedia.org/wiki/MediaWiki_FAQ#How_do_I_change_the_contents_of_the_navigation_toolbar.3F MediaWiki Navigation Help]&lt;br /&gt;
:Summary:&lt;br /&gt;
:*The following array should be moved to LocalSettings, from &amp;lt;code&amp;gt;includes/DefaultSettings.php &amp;lt;/code&amp;gt;. It specifies the pages which hold the text to be displayed in the navigation bar and the pages which hold the link of where each navigation bar tab points to. In other words, what appears here, in this array is not necessarily what will appear in the navigation bar; they are pages on the wiki site (or pointers within the database) to where this information is stored.&lt;br /&gt;
&lt;br /&gt;
 $wgNavigationLinks = array (&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;mainpage&#039;,	&#039;href&#039;=&amp;gt;&#039;mainpage&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;portal&#039;,	&#039;href&#039;=&amp;gt;&#039;portal-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;currentevents&#039;, &#039;href&#039;=&amp;gt;&#039;currentevents-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;recentchanges&#039;, &#039;href&#039;=&amp;gt;&#039;recentchanges-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;randompage&#039;,	&#039;href&#039;=&amp;gt;&#039;randompage-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;help&#039;, 		&#039;href&#039;=&amp;gt;&#039;helppage&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;sitesupport&#039;,	&#039;href&#039;=&amp;gt;&#039;sitesupport-url&#039; ),&lt;br /&gt;
 );&lt;br /&gt;
&lt;br /&gt;
For example, one line in the navigation array for this site is:&lt;br /&gt;
::&amp;lt;code&amp;gt;array( &#039;text&#039;=&amp;gt;&#039;howto&#039;,	&#039;href&#039;=&amp;gt;&#039;howto-url&#039; ) &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If this was a new page you wanted to add, you&#039;d have to log in as a SYSOP and then in the&lt;br /&gt;
browser URL type &amp;lt;code&amp;gt;bonewiki.ucalgary.ca/~skboyd/wiki/index.php/MediaWiki:howto&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*On the wiki site, there is a page &amp;lt;code&amp;gt;..../index.php/MediaWiki:howto&amp;lt;/code&amp;gt; which holds the text to be displayed on the navigation bar. The text on this page is:&lt;br /&gt;
::&amp;lt;code&amp;gt; How To&#039;s&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*There&#039;s another page on this wiki site, &amp;lt;code&amp;gt;..../index.php/MediaWiki:howto-url&amp;lt;/code&amp;gt; which holds the page address of this navigation link&#039;s target.&lt;br /&gt;
::&amp;lt;code&amp;gt; How To &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*The next step is to add the desired text and target to the pages on the wiki site, that are mentioned in the navigation array.  These will initially be empty pages and must be edited for the navigations to work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Logo - This is the picture which appears in the top left corner throughout the site. At all times, this acts as a link returning to the mainpage. To customize this logo, replace the location of the logo picture in the following line of LocalSettings:&lt;br /&gt;
::&amp;lt;code&amp;gt;$wgLogo     = &amp;quot;$wgScriptPath/myfavoritepicture.gif&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
:(Could use another file type for the image, such as .png).&lt;br /&gt;
&lt;br /&gt;
*Enable File Uploading - To enable file uploading, uncomment the following line, in LocalSettings. &lt;br /&gt;
::&amp;lt;code&amp;gt;$wgDisableUploads   = false;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
: - Then change the permissions on the image directory so that it is writable.&lt;br /&gt;
::&amp;lt;code&amp;gt;$chmod a+w images &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Adding Users===&lt;br /&gt;
Depending on the access restrictions specified in the &#039;LocalSettings.php&#039;, the site can be designed such that anybody can access and edit any of the pages, or only registered users may log on to the site. Furthermore, the site can be configured such that only the &#039;sysop&#039; of the site can create new accounts.  These restrictions are set within the LocalSettings file. (See above for details).&lt;br /&gt;
&lt;br /&gt;
:Note: This site has been configured so that only &#039;sysop&#039; can create new accounts.&lt;br /&gt;
&lt;br /&gt;
*Once logged in, the &#039;sysop&#039; can select &amp;quot;Create an account or log in&amp;quot; from the &amp;quot;Special Pages&amp;quot; link of the toolbox, along the left margin.  Here, the sysop creates a username and can then automatically email the new user a temporary password for the site. (This email will have the return address of the site administrator, as specified in LocalSettings.php.&lt;br /&gt;
&lt;br /&gt;
*Unfortunately, there is no easy way of deleting a user account. A user can be manually removed from the mySQL database, however this will most likely cause problems with other tables referring to this user or deleted row. This should only be done if you really understand mySQL. &lt;br /&gt;
:*The best way to remove a user, is for the sysop to either block them, or rename their account/ change their password.&lt;br /&gt;
&lt;br /&gt;
*A user can be given &#039;sysop&#039; and &#039;bureaucrat&#039; priveleges by an existing sysop, from a link on the sysop&#039;s &amp;quot;Special Pages&amp;quot;. (The original sysop is created during site initialization).&lt;br /&gt;
 &lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Wiki software successfully installed.&lt;br /&gt;
&lt;br /&gt;
Please see [http://meta.wikipedia.org/wiki/MediaWiki_i18n documentation on customizing the interface]&lt;br /&gt;
and the [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide User&#039;s Guide] for usage and configuration help.&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Help:Contents&amp;diff=1798</id>
		<title>Help:Contents</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Help:Contents&amp;diff=1798"/>
		<updated>2008-07-23T16:49:31Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Basic Editing==&lt;br /&gt;
&lt;br /&gt;
Helpful links: &lt;br /&gt;
*[http://www.mediawiki.org/wiki/Documentation WikiMedia Documentation]&lt;br /&gt;
*[http://meta.wikimedia.org/wiki/Help:Contents WikiMedia Users Guide]&lt;br /&gt;
*[http://meta.wikimedia.org/wiki/Help:Editing WikiMedia Editing Tips]&lt;br /&gt;
&lt;br /&gt;
===Text Editing===&lt;br /&gt;
&lt;br /&gt;
The simplest page modifications for this site are editing the text of a page. The text of a page can be edited all at &lt;br /&gt;
once, or more practically section by section.  &lt;br /&gt;
====Editing a section:====&lt;br /&gt;
:*Click the adjacent edit tab at the top of the desired section.&lt;br /&gt;
:*The browser now displays a large text box in the center of the page.  Inside this box contains all of the text of the section.&lt;br /&gt;
::Note: There are several formatting conventions to be considered when adding text. These affect the margins, layout, bullets, &lt;br /&gt;
section organisation, etc. See the below section about Text Formatting for details.&lt;br /&gt;
:*Once the text has been modified, select &#039;Save Page&#039; below the text window.&lt;br /&gt;
:*The change are now saved and the new, modified version of this page will appear. &lt;br /&gt;
&lt;br /&gt;
Be careful whenever making any changes, because once the changes are saved, this becomes the new page. Therefore it is possible to &lt;br /&gt;
delete entire sections. (For recovery of old page versions, see the Recent Changes page).&lt;br /&gt;
&lt;br /&gt;
====Editing an entire page====&lt;br /&gt;
:*Similar to above, but select the &#039;edit&#039; tab at the top of the page. Now, the text for the entire page appears in the text editing&lt;br /&gt;
window.&lt;br /&gt;
:*This is useful for changing the arrangement and ordering of sections but is &#039;&#039;&#039;not&#039;&#039;&#039; recommended for specific text editing.&lt;br /&gt;
&lt;br /&gt;
Especially here, be careful when editing because the entire page could be deleted.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Creating a new page===&lt;br /&gt;
&lt;br /&gt;
Creating a new page is very simple. You just have to make a link to this new page from an existing page, and click the link. This will bring you to the editing window of this page, to which you can now add content.&lt;br /&gt;
*For example, let&#039;s make a new page [[here]].&lt;br /&gt;
::This was done by putting the word &amp;quot;here&amp;quot; inside double square brackets, &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[[here]]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
*Select &amp;quot;Save page&amp;quot;, then click &amp;quot;here&amp;quot;, which is now in &amp;lt;b style=&amp;quot;color:red&amp;quot;&amp;gt;red&amp;lt;/b&amp;gt;. Here I begin my new page.&lt;br /&gt;
[[here]]&lt;br /&gt;
&lt;br /&gt;
===Linking to an external page===&lt;br /&gt;
The only difference here is that we use single square brackets, or none at all. &lt;br /&gt;
*Let&#039;s link to Steve Boyd&#039;s homepage here: http://www.enme.ucalgary.ca/~skboyd/. Nothing special, just the put the URL within the text.&lt;br /&gt;
::&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://www.enme.ucalgary.ca/~skboyd/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
*In order to have a more convenient name appear as the link, use single square brackets and type the desired name of the link, seperated by a space, within the brackets. [http://www.enme.ucalgary.ca/~skboyd/ Steve&#039;s Homepage]&lt;br /&gt;
::&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[http://www.enme.ucalgary.ca/~skboyd/ Steve&#039;s Homepage]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Text Formatting===&lt;br /&gt;
&lt;br /&gt;
If you&#039;re familiar with HTML conventions, you can apply &#039;&#039;&#039;most&#039;&#039;&#039; of these on a wiki page, however wiki has many of its own conventions.&lt;br /&gt;
The following table lists the text formatting operations applicable to this site.&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; width=&amp;quot;80%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;What appears on the Page&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;What you type&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot; width=&amp;quot;40%&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Section Headers:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This can&#039;t really be demonstrated within a table, but click the edit tab for various sections to see examples of&lt;br /&gt;
sections.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
= Major Section=&lt;br /&gt;
&lt;br /&gt;
==Section==&lt;br /&gt;
&lt;br /&gt;
===Sub-Section===&lt;br /&gt;
&lt;br /&gt;
====Sub-Sub-Section====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&#039;&#039;&#039;Newline:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Typing on the&lt;br /&gt;
next line &lt;br /&gt;
will not&lt;br /&gt;
make a new line.&lt;br /&gt;
&lt;br /&gt;
But leaving one line empty does start&lt;br /&gt;
a new line.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To start a new line without making a new paragraph &amp;lt;br&amp;gt;&lt;br /&gt;
Now we have a new line here.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
Typing on the&lt;br /&gt;
next line &lt;br /&gt;
will not&lt;br /&gt;
make a new line.&lt;br /&gt;
&lt;br /&gt;
But leaving one line empty does start&lt;br /&gt;
a new line.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
To start a new line without making a new paragraph &amp;lt;br&amp;gt;&lt;br /&gt;
Now we have a new line here.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Lists&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Lists are started like this.&lt;br /&gt;
**They can also have sub lists&lt;br /&gt;
***and sub-sub lists.&lt;br /&gt;
Starting a regular line like this ends the list.&lt;br /&gt;
&lt;br /&gt;
*But you can break &amp;lt;BR&amp;gt; lines &amp;lt;br&amp;gt; within a list &amp;lt;br&amp;gt; like this.&lt;br /&gt;
*Then start a new line.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
*Lists are started like this.&lt;br /&gt;
**They can also have sub lists&lt;br /&gt;
***and sub-sub lists.&lt;br /&gt;
Starting a regular line like this ends the list.&lt;br /&gt;
&lt;br /&gt;
*But you can break &amp;lt;BR&amp;gt; lines &amp;lt;br&amp;gt; within a list &amp;lt;br&amp;gt; like this.&lt;br /&gt;
*Then start a new line.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Numbered Lists:&#039;&#039;&#039;&lt;br /&gt;
#Numbered lists can be created automatically.&lt;br /&gt;
#New number here&lt;br /&gt;
##I&#039;m a number within a number.&lt;br /&gt;
##Me too.&lt;br /&gt;
#Back to the original list.&lt;br /&gt;
The end of the list.&lt;br /&gt;
#Now here&#039;s a new list.&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#Numbered lists can be created automatically.&lt;br /&gt;
#New number here&lt;br /&gt;
##I&#039;m a number within a number.&lt;br /&gt;
##Me too.&lt;br /&gt;
#Back to the original list.&lt;br /&gt;
The end of the list.&lt;br /&gt;
#Now here&#039;s a new list.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Indenting&#039;&#039;&#039;&lt;br /&gt;
:Starting a line with a colon&lt;br /&gt;
::or several colons, you can indent the line.&lt;br /&gt;
No indent here!&lt;br /&gt;
:::::I&#039;m super indented.&lt;br /&gt;
&lt;br /&gt;
:*Indenting, as well as bullets, and numbered lists can&lt;br /&gt;
::be combined.&lt;br /&gt;
:#I&#039;m number one&lt;br /&gt;
:#*I&#039;m almost one&lt;br /&gt;
:#I&#039;m only number two :(&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
:Starting a line with a colon&lt;br /&gt;
::or several colons, you can indent the line.&lt;br /&gt;
No indent here!&lt;br /&gt;
:::::I&#039;m super indented.&lt;br /&gt;
&lt;br /&gt;
:*Indenting, as well as bullets, and numbered lists can&lt;br /&gt;
::be combined.&lt;br /&gt;
:#I&#039;m number one&lt;br /&gt;
:#*I&#039;m almost one&lt;br /&gt;
:#I&#039;m only number two :(&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
 Starting every line with a &lt;br /&gt;
    space means that the text won&#039;t be formatted&lt;br /&gt;
 and should appear as typed.     But be careful, lines no &lt;br /&gt;
 longer wrap automatically.&lt;br /&gt;
 &lt;br /&gt;
 *This can be useful for preformatted text&lt;br /&gt;
    but also, is nice for code because it makes this nice box.&lt;br /&gt;
&lt;br /&gt;
Another way to make text within this box is to use &amp;lt;nowiki&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;/nowiki&amp;gt; &lt;br /&gt;
and &amp;lt;nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
We&#039;re inside a box.&lt;br /&gt;
*Ya, isn&#039;t this cool.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 Starting every line with a &lt;br /&gt;
    space means that the text won&#039;t be formatted&lt;br /&gt;
 and should appear as typed.     But be careful, lines no &lt;br /&gt;
 longer wrap automatically.&lt;br /&gt;
 &lt;br /&gt;
 *This can be useful for preformatted text&lt;br /&gt;
    but also, is nice for code because it makes this nice box.&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another way to make text within this box is to use &amp;lt;nowiki&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
and &amp;lt;nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
We&#039;re inside a box.&lt;br /&gt;
*Ya, isn&#039;t this cool.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Tables===&lt;br /&gt;
&lt;br /&gt;
Tables, like the one above are very useful for organising information, or for specifying the layout of a page - placing text&lt;br /&gt;
and images in certain locations.&lt;br /&gt;
:(Click edit of the table above as an example)&lt;br /&gt;
&lt;br /&gt;
*A table begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;table&amp;gt; Table code &amp;lt;/table&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
*A row begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;tr&amp;gt; Row code &amp;lt;/tr&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
*A column begins and ends with &amp;lt;nowiki&amp;gt; &amp;lt;td&amp;gt; Column code &amp;lt;/td&amp;gt;. &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These are nested within each other: begin a table, row, column; end the column, row, table.&lt;br /&gt;
These are nested within each other: begin a table, row, column; end the column, row, table.&lt;br /&gt;
&lt;br /&gt;
*There are several options that may be set when starting a table, row, or column. The following is a list of the most useful.&lt;br /&gt;
:*&#039;&#039;&#039;border&#039;&#039;&#039; - Sets the thickness of the border for the entire table, or can be invisible.  &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;border=&amp;quot;n&amp;quot;&amp;lt;/code&amp;gt;, (n = {0,1,2,3,etc.})&lt;br /&gt;
:*&#039;&#039;&#039;align&#039;&#039;&#039; - sets the alignment of the table with respect to the page margins, or the text and objects within a cell. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;align=&amp;quot;center&amp;quot;&amp;lt;/code&amp;gt;, (or right, left).&lt;br /&gt;
:*&#039;&#039;&#039;valign&#039;&#039;&#039; - sets the vertical alignment of the text and objects within a cell. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;valign=&amp;quot;top&amp;quot; &amp;lt;/code&amp;gt;, (bottom, middle).&lt;br /&gt;
:*&#039;&#039;&#039;width, height&#039;&#039;&#039; - sets the width, height of the table and/or a column, row. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt; width=&amp;quot;90%&amp;quot; height=&amp;quot;450&#039;&amp;lt;/code&amp;gt;, (size can be in number of pixels, or as a percentage).&lt;br /&gt;
:*&#039;&#039;&#039;background&#039;&#039;&#039; - sets the background of a cell or table.  This can be either a picture or a solid color. &lt;br /&gt;
::ex: &amp;lt;code&amp;gt;bgcolor=&amp;quot;yellow&amp;quot; &amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;background=&amp;quot;mypicture.jpg&amp;quot; &amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Upload Help==&lt;br /&gt;
&lt;br /&gt;
#Once logged-on to the site, select the &#039;Upload file&#039; link within the toolbox on the left side-bar.&lt;br /&gt;
#&#039;Browse&#039; your system for the desired file, confirm its copyright compliance, and select Upload File.&lt;br /&gt;
#:By default, a page will be created for this file with the filename as its address and, regardless of its type, will be classified as an image.&lt;br /&gt;
#The file is now stored in the image section of the site and can be linked to from any other page within the site, as follows.&lt;br /&gt;
#:a) If the file is an image, then place the following code on a wiki page at the desired location of the image:&lt;br /&gt;
     &amp;lt;nowiki&amp;gt;[[Image:my_favorite_image.jpg|picture_position,ie_right,left,center]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
::(The picture location is not necessary and could be left blank. See the example below.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
::b) If the file is not an image, then insert the following code where the file is to be downloaded:&lt;br /&gt;
::(This code should most likely be inserted into the Documents page)&lt;br /&gt;
     &amp;lt;nowiki&amp;gt;[[Media:my_favorite_document.pdf| Document Link Name Displayed on Page]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*NB. For a list of all the files available for download from the wiki site, both images and none images, go to the &#039;&#039;&#039;Special Pages&#039;&#039;&#039; link in the toolbox and then  select &#039;&#039;&#039;Image list&#039;&#039;&#039;.  This page lists all the uploaded files on the site and they can all be downloaded from here.&lt;br /&gt;
&lt;br /&gt;
===Examples ===&lt;br /&gt;
*click the adjacent &#039;edit&#039; tabs to view the code for the examples.&lt;br /&gt;
&lt;br /&gt;
====Documents ====&lt;br /&gt;
&lt;br /&gt;
Now let&#039;s provide a pdf document: [[Media:My_favorite_pdf.pdf| I&#039;m a pdf document]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Images====&lt;br /&gt;
&lt;br /&gt;
Let&#039;s put an image of Steve here:&lt;br /&gt;
[[Image:Steve Boyd money.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*NB. Note how a link is automatically created to the picture&#039;s actual location within the image section - click on the image itself to see.&lt;br /&gt;
&lt;br /&gt;
==Site Administration==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Site Creation===&lt;br /&gt;
&lt;br /&gt;
The following explains how this wiki site was created. The intention is that in the event the site is lost, so long as the text from this page &lt;br /&gt;
is backed-up somewhere, the site could be recreated. Also, just to complete the documentation, I have tried to outline all the steps that &lt;br /&gt;
I took and explanations of parts that I had problems with while developing this site.&lt;br /&gt;
&lt;br /&gt;
*The &amp;quot;wiki&amp;quot; interface of this site was developed by MediaWiki and this software runs in the background, on the server at all times.  It &lt;br /&gt;
is this interface that allows users to edit pages, upload documents, and change a variety of settings, which is all stored in a database&lt;br /&gt;
on the server.&lt;br /&gt;
*The database that is compatible with MediaWiki is mySQL. This is a standard database that is one of the packages included with the latest&lt;br /&gt;
Fedora Core for linux.  This database caused several problems during the development of the first versions of the wiki site, however the &lt;br /&gt;
version mySQL 4.1 has so far not caused any similar problems.&lt;br /&gt;
:*It is useful to know that all the data from the site is stored on a mySQL database on the server, however there should be no need to ever&lt;br /&gt;
directly access this database, or try to edit or modify it directly.  &lt;br /&gt;
:*The one exception to this is for setting up the system operator (sysop) or bureaucrat privileges. (more on this later)&lt;br /&gt;
&lt;br /&gt;
====Install Instructions====&lt;br /&gt;
&lt;br /&gt;
Check out [http://meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide:_Installation MediaWiki Installation] &lt;br /&gt;
*Download the latest, stable version of mediawiki from [http://wikipedia.sourceforge.net/| wikipedia.sourcforge].&lt;br /&gt;
::The MediaWiki FAQs are &#039;&#039;&#039;excellent&#039;&#039;&#039;, and should provide clear and thorough instructions for downloading and installing the program.&lt;br /&gt;
(However here is a quick summary)&lt;br /&gt;
*Read the &#039;Install.txt&#039; file for installation instructions and system requirements.&lt;br /&gt;
*The system requirements for the server (which could really be any computer set up appropriately, although &#039;&#039;&#039;preferably linux&#039;&#039;&#039;) are:&lt;br /&gt;
:*Apache web server&lt;br /&gt;
:*mySQL database&lt;br /&gt;
:*PHP-mySQL package&lt;br /&gt;
:(If running a new version of Fedora Core, all of these can be installed as packages from the original boot disks).&lt;br /&gt;
*Uncompress and untar the mediawiki folder.  It is advised to rename this folder something convenient, like wiki or mediawiki.&lt;br /&gt;
*Change the read/write access of the config directory to be readable by all.  This folder contains the php script for the initial configuration.&lt;br /&gt;
::&amp;lt;code&amp;gt;chmod a+w config&amp;lt;/code&amp;gt;&lt;br /&gt;
*The next step is to browse into this folder from an internet browser.  If this is run off of your linux box, you will need to find the folder open to the world &lt;br /&gt;
via http and move the entire mediawiki folder here.  When I did it, it was:&lt;br /&gt;
::/var/www/html/&lt;br /&gt;
:*Once the folder is there, browse &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://my_ip_address/mediawiki&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.  The installation script should start and you can now fill in the boxes, &lt;br /&gt;
initializing the site and the database  which will store all the site data.&lt;br /&gt;
&lt;br /&gt;
*The on-screen instructions are rather self-explanatory and after filling in and confirming the necessary information, the site should be created.&lt;br /&gt;
*On the new page, the instructions will say to move the &#039;LocalSettings.php&#039; file into your main mediawik folder and then delete the config directory.&lt;br /&gt;
::Once this is done, the &#039;LocalSettings.php&#039; file now becomes the default script that loads the mainpage of the wiki site.&lt;br /&gt;
&lt;br /&gt;
====LocalSettings.php====&lt;br /&gt;
&lt;br /&gt;
This becomes the most important and useful file to change the apperance and customize the wiki site. Everything else can be done through the interface&lt;br /&gt;
of the wiki site itself. Within this file, one can change the navigation bar on the left margin, the logo appearing in the upper left corner, the login restrictions, the name &lt;br /&gt;
of the site, the ability to upload files, the name of the site, the contact information and address of the site administrator, among others.&lt;br /&gt;
&lt;br /&gt;
*Navigation bar - For a detailed explanation on editing the Navigation bar, see [http://meta.wikimedia.org/wiki/MediaWiki_FAQ#How_do_I_change_the_contents_of_the_navigation_toolbar.3F MediaWiki Navigation Help]&lt;br /&gt;
:Summary:&lt;br /&gt;
:*The following array should be moved to LocalSettings, from &amp;lt;code&amp;gt;includes/DefaultSettings.php &amp;lt;/code&amp;gt;. It specifies the pages which hold the text to be displayed in the navigation bar and the pages which hold the link of where each navigation bar tab points to. In other words, what appears here, in this array is not necessarily what will appear in the navigation bar; they are pages on the wiki site (or pointers within the database) to where this information is stored.&lt;br /&gt;
&lt;br /&gt;
 $wgNavigationLinks = array (&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;mainpage&#039;,	&#039;href&#039;=&amp;gt;&#039;mainpage&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;portal&#039;,	&#039;href&#039;=&amp;gt;&#039;portal-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;currentevents&#039;, &#039;href&#039;=&amp;gt;&#039;currentevents-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;recentchanges&#039;, &#039;href&#039;=&amp;gt;&#039;recentchanges-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;randompage&#039;,	&#039;href&#039;=&amp;gt;&#039;randompage-url&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;help&#039;, 		&#039;href&#039;=&amp;gt;&#039;helppage&#039; ),&lt;br /&gt;
 	array( &#039;text&#039;=&amp;gt;&#039;sitesupport&#039;,	&#039;href&#039;=&amp;gt;&#039;sitesupport-url&#039; ),&lt;br /&gt;
 );&lt;br /&gt;
&lt;br /&gt;
For example, one line in the navigation array for this site is:&lt;br /&gt;
::&amp;lt;code&amp;gt;array( &#039;text&#039;=&amp;gt;&#039;howto&#039;,	&#039;href&#039;=&amp;gt;&#039;howto-url&#039; ) &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If this was a new page you wanted to add, you&#039;d have to log in as a SYSOP and then in the&lt;br /&gt;
browser URL type &amp;lt;code&amp;gt;bonewiki.ucalgary.ca/~skboyd/wiki/index.php/MediaWiki:howto&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*On the wiki site, there is a page &amp;lt;code&amp;gt;..../index.php/MediaWiki:howto&amp;lt;/code&amp;gt; which holds the text to be displayed on the navigation bar. The text on this page is:&lt;br /&gt;
::&amp;lt;code&amp;gt; How To&#039;s&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*There&#039;s another page on this wiki site, &amp;lt;code&amp;gt;..../index.php/MediaWiki:howto-url&amp;lt;/code&amp;gt; which holds the page address of this navigation link&#039;s target.&lt;br /&gt;
::&amp;lt;code&amp;gt; How To &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*The next step is to add the desired text and target to the pages on the wiki site, that are mentioned in the navigation array.  These will initially be empty pages and must be edited for the navigations to work.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Logo - This is the picture which appears in the top left corner throughout the site. At all times, this acts as a link returning to the mainpage. To customize this logo, replace the location of the logo picture in the following line of LocalSettings:&lt;br /&gt;
::&amp;lt;code&amp;gt;$wgLogo     = &amp;quot;$wgScriptPath/myfavoritepicture.gif&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
:(Could use another file type for the image, such as .png).&lt;br /&gt;
&lt;br /&gt;
*Enable File Uploading - To enable file uploading, uncomment the following line, in LocalSettings. &lt;br /&gt;
::&amp;lt;code&amp;gt;$wgDisableUploads   = false;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
: - Then change the permissions on the image directory so that it is writable.&lt;br /&gt;
::&amp;lt;code&amp;gt;$chmod a+w images &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Adding Users===&lt;br /&gt;
Depending on the access restrictions specified in the &#039;LocalSettings.php&#039;, the site can be designed such that anybody can access and edit any of the pages, or only registered users may log on to the site. Furthermore, the site can be configured such that only the &#039;sysop&#039; of the site can create new accounts.  These restrictions are set within the LocalSettings file. (See above for details).&lt;br /&gt;
&lt;br /&gt;
:Note: This site has been configured so that only &#039;sysop&#039; can create new accounts.&lt;br /&gt;
&lt;br /&gt;
*Once logged in, the &#039;sysop&#039; can select &amp;quot;Create an account or log in&amp;quot; from the &amp;quot;Special Pages&amp;quot; link of the toolbox, along the left margin.  Here, the sysop creates a username and can then automatically email the new user a temporary password for the site. (This email will have the return address of the site administrator, as specified in LocalSettings.php.&lt;br /&gt;
&lt;br /&gt;
*Unfortunately, there is no easy way of deleting a user account. A user can be manually removed from the mySQL database, however this will most likely cause problems with other tables referring to this user or deleted row. This should only be done if you really understand mySQL. &lt;br /&gt;
:*The best way to remove a user, is for the sysop to either block them, or rename their account/ change their password.&lt;br /&gt;
&lt;br /&gt;
*A user can be given &#039;sysop&#039; and &#039;bureaucrat&#039; priveleges by an existing sysop, from a link on the sysop&#039;s &amp;quot;Special Pages&amp;quot;. (The original sysop is created during site initialization).&lt;br /&gt;
 &lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Wiki software successfully installed.&lt;br /&gt;
&lt;br /&gt;
Please see [http://meta.wikipedia.org/wiki/MediaWiki_i18n documentation on customizing the interface]&lt;br /&gt;
and the [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide User&#039;s Guide] for usage and configuration help.&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1860</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1860"/>
		<updated>2008-05-15T17:17:57Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Hello, world!&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====A simple &amp;quot;Hello, world!&amp;quot; application====&lt;br /&gt;
&lt;br /&gt;
In C:&lt;br /&gt;
&lt;br /&gt;
Write the following program in your favorite text editor (e.g. eve) and save it as hello.c:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  printf(&amp;quot;Hello, world!\n&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  return(0);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and link using the following lines:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CC /OBJECT=hello.obj hello.c&lt;br /&gt;
LINK hello.obj /EXECUTABLE=hello.exe&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Run it:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ run hello&lt;br /&gt;
Hello, world!&lt;br /&gt;
$ &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
&lt;br /&gt;
Write the following program in your favorite text editor (e.g. eve) and save it as hello.cxx:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Hello, world!&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and link using the following lines:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CXX /OBJECT=hello.obj hello.cxx&lt;br /&gt;
CXXLINK hello.obj /EXECUTABLE=hello.exe&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Run it:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ run hello&lt;br /&gt;
Hello, world!&lt;br /&gt;
$ &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====A &amp;quot;Hello, world!&amp;quot; application with parameters====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Write the following program in your favorite text editor (e.g. eve) and save it as say_hello.c:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
int main(int argc, char *argv[])&lt;br /&gt;
{&lt;br /&gt;
  if (argc &amp;lt; 2)&lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Usage: hello &amp;lt;name&amp;gt;\n&amp;quot;);&lt;br /&gt;
    exit(0);&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  printf(&amp;quot;Hello, %s!\n&amp;quot;, argv[1]);&lt;br /&gt;
&lt;br /&gt;
  return(0);&lt;br /&gt;
}   &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and link using the following lines:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CC /OBJECT=say_hello.obj say_hello.c&lt;br /&gt;
LINK say_hello.obj /EXECUTABLE=say_hello.exe&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you need to define a symbol for your executable:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
hello :== $DISK1:[DEVEL.FABIO.EXAMPLES.HELLO]SAY_HELLO.EXE&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This allows you to run your program by simply calling &amp;quot;hello&amp;quot;. You can give it parameters too, Unix style. The mechanism is known in VMS as &amp;quot;defining a foreign command&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Run it:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ hello&lt;br /&gt;
Usage: hello &amp;lt;name&amp;gt;&lt;br /&gt;
$ hello Steve&lt;br /&gt;
Hello, steve!&lt;br /&gt;
$ hello &amp;quot;Steve&amp;quot;&lt;br /&gt;
Hello, Steve!&lt;br /&gt;
$&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Writing a (Unix) Makefile for the say_hello application====&lt;br /&gt;
&lt;br /&gt;
Once the application described above is written, type the following into a file named &amp;quot;Makefile&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
all: say_hello.exe&lt;br /&gt;
&lt;br /&gt;
clean:&lt;br /&gt;
        delete say_hello.exe;*&lt;br /&gt;
        delete say_hello.obj;*&lt;br /&gt;
&lt;br /&gt;
say_hello.exe: say_hello.obj&lt;br /&gt;
        LINK say_hello.obj /EXECUTABLE=say_hello.exe&lt;br /&gt;
&lt;br /&gt;
say_hello.obj: say_hello.c&lt;br /&gt;
        CC /OBJECT=say_hello.obj say_hello.c&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;IMPORTANT&#039;&#039;: the space before the commands in the Makefile (i.e. the space before &amp;quot;delete ...&amp;quot;, &amp;quot;LINK ...&amp;quot;, etc) is a single TAB character.&lt;br /&gt;
&lt;br /&gt;
You can now compile your program by calling &amp;quot;gmake&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ gmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
I am assuming, of course, that gmake is installed in your system. In the bone lab, gmake is installed in duck.kin.ucalgary.ca.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Advanced topics====&lt;br /&gt;
&lt;br /&gt;
A list of nice things to add to this short tutorial:&lt;br /&gt;
&lt;br /&gt;
* Status of cmake in VMS&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.8 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 5.0.4&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 4.4.0 Open source&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.8.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login{space}{enter}&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS (see SmartCVS below as option to WinCVS)&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 4.4.0 Open Source version&lt;br /&gt;
#*a. Extract all from “qt-win-opensource-4.4.0.zip” to your &amp;quot;C:\pack\qt-win-opensource-src-4.4.0&amp;quot; folder&lt;br /&gt;
#*b. Make changes to the Environment Variables which can be found in Control Panel -&amp;gt; System -&amp;gt; Advanced -&amp;gt; Environment Variables &lt;br /&gt;
#::-In System Variables, make new variable with name &amp;quot;QMAKESPEC&amp;quot; and value &amp;quot;win32-msvc2008&amp;quot; (*Note: 2008 or whichever version of VS being used)&lt;br /&gt;
#::-In System Variables, make new variable with name &amp;quot;QTDIR&amp;quot; and value &amp;quot;(your QT directory)&amp;quot;&lt;br /&gt;
#::-In System Variables, in variable Path, add &amp;quot;;(your QT directory)\bin;(your QT directory)\qmake;&amp;quot; (*Note: Ensure that there are no spaces and do not remove anything from the path that was previously there)&lt;br /&gt;
#*c. Ensure the Visual Studio Environment Variables are set. You may have the run either of the following in the Visual Studio Command Prompt Window:&lt;br /&gt;
#::- the &amp;quot;vsvars32.bat&amp;quot; file found in &amp;quot;Microsoft Visual Studio 9.0\VC\bin&amp;quot; folder&lt;br /&gt;
#::- or for 64-bit, &amp;quot;vcvarsamd64.bat&amp;quot; file found in &amp;quot;Microsoft Visual Studio 9.0\VC\bin\amd64&amp;quot;&lt;br /&gt;
#*d.In the standard Command Prompt, go to your QT directory and type &amp;quot;configure&amp;quot;. (approx 10 mins)&lt;br /&gt;
#*e.Once completed, type &amp;quot;nmake&amp;quot;. (approx 2 hrs)&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\InsightToolkit-2.8.1\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build ITK using Visual Studio (or desired program)&lt;br /&gt;
##Open C:\pack\InsightToolkit-2.8.1\bin\itk.sln (.dsw)&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK as source code&lt;br /&gt;
#*c. Make C:\pack\VTK\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#::VTK_USE_MFC: ON&lt;br /&gt;
#*g. Enter &#039;4&#039; when asked which version of Qt&lt;br /&gt;
#*h. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*i. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*j. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual Studio (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\bin\vtk.sln (note: file extension is .dsw for VS 6.0 and older)&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON	&lt;br /&gt;
#::BUILD_MIXED_PROJECTS: ON	&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Add the following environment variables:&lt;br /&gt;
##Open the Control Panel&lt;br /&gt;
##Double click and open &#039;System&#039;&lt;br /&gt;
##Go to the &#039;Advanced tab&#039; and click on the &#039;Environment Variables&#039; button&lt;br /&gt;
##In the System Variable Section click on the &#039;Path&#039; variable and click &#039;edit&#039;&lt;br /&gt;
##Add the following values separated by semi-colons&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\tetrapack\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\aimpack64\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Unsorted\Debug&lt;br /&gt;
#Build vtkMy using Visual Studio (or desired program)&lt;br /&gt;
##Open C:\pack\vtkMy\bin\vtkmy.sln (.dsw)&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or (this will change the files):&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
#:  or (local files are unchanged):&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs -nq update &amp;lt;/code&amp;gt; &lt;br /&gt;
#:  update outputs are:&lt;br /&gt;
#*  &amp;lt;code&amp;gt;U file&amp;lt;/code&amp;gt; new or newer file in repository&lt;br /&gt;
#*  &amp;lt;code&amp;gt;M file&amp;lt;/code&amp;gt; newer file in local directory&lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To look at the changes made to a file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs log mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, see following section:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===SmartCVS===&lt;br /&gt;
&lt;br /&gt;
This program is an option instead of using WinCVS.  While it is easier to setup it is slower and WinCVS is preferred.&lt;br /&gt;
&lt;br /&gt;
#Download program from: http://www.syntevo.com/smartcvs/download.html&lt;br /&gt;
#Run program&lt;br /&gt;
#Choose “Check out project from repository”&lt;br /&gt;
##Click Manage&lt;br /&gt;
##Click Add&lt;br /&gt;
##Click “Enter CVS-Location”&lt;br /&gt;
##Type:  :ext:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
##Click “Next”&lt;br /&gt;
##Choose password or Public/Private Key&lt;br /&gt;
#Either enter password or load key file and passphrase&lt;br /&gt;
#Click ‘Finish’&lt;br /&gt;
#When back to Check out project window, click next and wait for checkout&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Lab_Administration&amp;diff=1786</id>
		<title>Lab Administration</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Lab_Administration&amp;diff=1786"/>
		<updated>2007-11-09T20:17:46Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* Research Group Contact Info */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Research Group Contact Info==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Bone Imaging Laboratory (a.k.a. the fishbowl)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Kinesiology (KNB 2225)&amp;lt;br&amp;gt;&lt;br /&gt;
220-3188&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3D Morphometrics Laboratory&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Heritage Medical Research Building (HMRB 405)&amp;lt;br&amp;gt;&lt;br /&gt;
220-8411, 220-3131&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Steve Boyd&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   skboyd@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-4173&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   284-3550&amp;lt;br&amp;gt;&lt;br /&gt;
cell:	   978-3550&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Helen Buie&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   hbuie@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-2452&amp;lt;br&amp;gt;&lt;br /&gt;
cell:	   816-7943&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Graeme Campbell&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   gmcampbe@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   210-8965&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   210-1443&amp;lt;br&amp;gt;&lt;br /&gt;
cell:	   852-5554&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Josh Klinck&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   rjklinck@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-5450&amp;lt;br&amp;gt;&lt;br /&gt;
home1: 	   281-0032&amp;lt;br&amp;gt;&lt;br /&gt;
home2: 	   254-2992&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Erika Kristensen&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   ekristensen@kin.ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   210-8933&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   697-3850&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Josh MacNeil&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   jamacnei@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-2802&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   262-3299&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Michael Hofmann&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   mhofmann@student.ethz.ch&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Etienne Schwyter&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   eschwyter@kin.ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jerome Gire&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   jgire@kin.ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Yves Pauchard&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   yves.pauchard@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-3841&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   475-2454&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;James DuMont&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   jimmydt@gmail.com&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-3188&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   998-7555&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Patrick Meunier&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   pjymeuni@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-3188&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   521-0207&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Steve Sandercott&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   ssandercott@kin.ucalgary.ca, ssanderc@waterloo.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   210-8965&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   519-546-6218&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Chris Moore&amp;lt;br&amp;gt;&lt;br /&gt;
email:	   cpmoore@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:	   220-3188&amp;lt;br&amp;gt;&lt;br /&gt;
home:	   932-0776&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rochelle Nieuwenhuis&amp;lt;br&amp;gt;&lt;br /&gt;
email:     midnights_pet@hotmail.com&amp;lt;br&amp;gt;&lt;br /&gt;
office:    220-3188&amp;lt;br&amp;gt;&lt;br /&gt;
home:      243-2955&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;F&amp;amp;aacute;bio Ayres&amp;lt;br&amp;gt;&lt;br /&gt;
email:     fjayres@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
room:      KNB 2202&amp;lt;br&amp;gt;&lt;br /&gt;
office:    220-4687&amp;lt;br&amp;gt;&lt;br /&gt;
home:      532-3919&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kyle Nishiyama&amp;lt;br&amp;gt;&lt;br /&gt;
email:     kksnishi@ucalgary.ca&amp;lt;br&amp;gt;&lt;br /&gt;
office:    220-3853&amp;lt;br&amp;gt;&lt;br /&gt;
cell:      400-6315&amp;lt;br&amp;gt;&lt;br /&gt;
home:      455-0770&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conferences ==&lt;br /&gt;
&lt;br /&gt;
===Conferences 2006===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;International Bone Densitometry Workshop (IBDW)&#039;&#039;&#039;&lt;br /&gt;
:http://www.procom-i.co.jp/ibdw2006/frameindex.html&lt;br /&gt;
&lt;br /&gt;
:IBDW 2006&lt;br /&gt;
:Kyoto, Japan&lt;br /&gt;
:November 5-9, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due June 15, 2006&lt;br /&gt;
:pre-registration deadline: June 30th, 2006&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Osteoarthritis Research Society International (OARSI)&#039;&#039;&#039;&lt;br /&gt;
:http://www.oarsi.org/conference/06Congress/AbstractInfo.htm&lt;br /&gt;
&lt;br /&gt;
:OARSI 2006 World Congress&lt;br /&gt;
:Prague, Czech Republic&lt;br /&gt;
:December 7-10, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due:  July 31, 2006&lt;br /&gt;
:pre-registration deadline:  ?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;American Society of Bone and Mineral Research (ASBMR)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.asbmr.org/&lt;br /&gt;
&lt;br /&gt;
:ASBMR 28th annual meeting&lt;br /&gt;
:Philadelphia, PA, USA&lt;br /&gt;
:September 15-19, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due:  April 29, 2006 at 5pm CDT&lt;br /&gt;
:pre-registration deadline:  July 20, 2006&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;American Society of Biomechanics (ASB)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.asbweb.org/&lt;br /&gt;
&lt;br /&gt;
:30th annual meeting of the ASB&lt;br /&gt;
:Blacksburg, Virginia, USA&lt;br /&gt;
:September 6-9, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due: April 3, 2006&lt;br /&gt;
:pre-registration deadline:  July 1, 2006&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;International Society of Biomechanics (ISB)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.isbweb.org/&lt;br /&gt;
&lt;br /&gt;
:5th world congress of biomechanics&lt;br /&gt;
:Munich, Germany&lt;br /&gt;
:July 29-August 4, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due: February 15, 2006&lt;br /&gt;
:pre-registration deadline:  May 1, 2006&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;European Society of Biomechanics (ESB)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.esbiomech.org/&lt;br /&gt;
&lt;br /&gt;
:15th conference of the ESB (as part of 5th world congress of biomechanics)&lt;br /&gt;
:Munich, Germany&lt;br /&gt;
:July 29-August 4, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due: February 15, 2006&lt;br /&gt;
:pre-registration deadline:  May 1, 2006&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;American Society of Mechanical Engineers (ASME)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://divisions.asme.org/bed/&lt;br /&gt;
&lt;br /&gt;
:2006 Summer Bioengineering Conference&lt;br /&gt;
:Amelia Island, Florida, USA&lt;br /&gt;
:June 21-25, 2006&lt;br /&gt;
&lt;br /&gt;
:abstracts due: January 27, 2006&lt;br /&gt;
:pre-registration deadline:  May 13, 2006&lt;br /&gt;
&lt;br /&gt;
===Conferences 2007===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Orthopaedic Research Society (ORS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ors.org/&lt;br /&gt;
&lt;br /&gt;
:The 6th combined meeting of the ORS&lt;br /&gt;
:Honolulu, Hawaii, USA&lt;br /&gt;
:October 20-24, 2007&lt;br /&gt;
&lt;br /&gt;
:abstracts due:  July 31, 2006&lt;br /&gt;
:pre-registration deadline:  ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IEEE Engineering in Medicine and Biology Society (EMBS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.embs.org/&lt;br /&gt;
&lt;br /&gt;
:29th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (IEEE EMBC)&lt;br /&gt;
:Lyon, France&lt;br /&gt;
:August 23-26, 2007&lt;br /&gt;
:http://www.embc07.ulster.ac.uk/&lt;br /&gt;
&lt;br /&gt;
:abstracts due: Monday April 2, 2007&lt;br /&gt;
:notification: June 15, 2007&lt;br /&gt;
:pre-registration deadline:  July 10, 2007&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Orthopaedic Research Society (ORS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ors.org/&lt;br /&gt;
&lt;br /&gt;
:The 53rd annual meeting of the ORS&lt;br /&gt;
:San Diego, California, USA&lt;br /&gt;
:February 11-14, 2007&lt;br /&gt;
&lt;br /&gt;
:abstracts due: Monday July 31, 2006&lt;br /&gt;
:pre-registration deadline:  ?&lt;br /&gt;
&lt;br /&gt;
===Conferences 2008===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The International Society for Optical Engineering (SPIE)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.spie.org&lt;br /&gt;
&lt;br /&gt;
:SPIE Annual Conference on Medical Imaging&lt;br /&gt;
:San Diego, California, USA&lt;br /&gt;
:February 16-21, 2008&lt;br /&gt;
&lt;br /&gt;
:abstracts due: Aug 6th, 2007&lt;br /&gt;
:manuscripts due: Jan 21st, 2008&lt;br /&gt;
:pre-registration deadline: ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Orthopaedic Research Society (ORS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ors.org/&lt;br /&gt;
&lt;br /&gt;
:The 54th annual meeting of the ORS&lt;br /&gt;
:San Francisco, California, USA&lt;br /&gt;
:March 2-5, 2008&lt;br /&gt;
&lt;br /&gt;
:abstracts due: Sept 5th, 2007&lt;br /&gt;
:pre-registration deadline:  ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IEEE Signal Processing Society (SPS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ieee.org/organizations/society/sp/&lt;br /&gt;
&lt;br /&gt;
:The 33rd IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP)&lt;br /&gt;
:Las Vegas, Nevada, USA&lt;br /&gt;
:March 31 - April 4, 2008&lt;br /&gt;
:http://www.icassp2008.org/&lt;br /&gt;
&lt;br /&gt;
:4-page paper due: Oct 7th, 2007&lt;br /&gt;
:notification: Dec 14th, 2007&lt;br /&gt;
:pre-registration deadline: Jan 18th, 2008&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IEEE Signal Processing Society (SPS) &amp;amp; IEEE Engineering in Medicine and Biology Society (EMBS)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.ieee.org/organizations/society/sp/&lt;br /&gt;
:http://www.embs.org/&lt;br /&gt;
&lt;br /&gt;
:5th IEEE International Symposium on Biomedical Imaging (ISBI 2008)&lt;br /&gt;
:Paris, France&lt;br /&gt;
:May 14 - May 17, 2008&lt;br /&gt;
:http://www.biomedicalimaging.org/&lt;br /&gt;
&lt;br /&gt;
:4-page paper due: Dec 7th, 2007&lt;br /&gt;
:notification: Feb 15th, 2008&lt;br /&gt;
:pre-registration deadline: March 14th, 2008&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ACM SIGGRAPH&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:http://www.siggraph.org&lt;br /&gt;
&lt;br /&gt;
:The 35th International Conference on Computer Graphics SIGGRAPH2008&lt;br /&gt;
:TBA&lt;br /&gt;
:TBA (probably August 2008)&lt;br /&gt;
&lt;br /&gt;
:abstracts due: TBA (probably January 2008)&lt;br /&gt;
:pre-registration deadline: ?&lt;br /&gt;
&lt;br /&gt;
==Journal Club==&lt;br /&gt;
&lt;br /&gt;
===High Priority Journals===&lt;br /&gt;
&lt;br /&gt;
[http://www.jbmr-online.com/ Journal of Bone and Mineral Research ] (2002 6.329)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Steve&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com.ezproxy.lib.ucalgary.ca:2048/science?_ob=JournalURL&amp;amp;_cdi=4987&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=00f0a210c77f892821ee55e76b66cd13 Bone] (2005 3.572)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Erika &lt;br /&gt;
&lt;br /&gt;
[http://www.springerlink.com/(rexfj3u4l55pkznoycbqxke2)/app/home/journal.asp?referrer=parent&amp;amp;backto=linkingpublicationresults,1:100120,1 Calcified Tissue International] (2004 2.258)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh K.&lt;br /&gt;
&lt;br /&gt;
[http://www.springerlink.com/(yz0q05yc4dlalxruqy2j1b55)/app/home/journal.asp?referrer=parent&amp;amp;backto=linkingpublicationresults,1:102828,1 Osteoporosis International] (2003 3.799)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Graeme&lt;br /&gt;
&lt;br /&gt;
[http://ees.elsevier.com/mep/ Medical Engineering and Physics] (2002 0.769)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh M.&lt;br /&gt;
&lt;br /&gt;
===Medium Priority Journals===&lt;br /&gt;
&lt;br /&gt;
[http://www.bme.gatech.edu/abme/ Annals of Biomedical Engineering] (2002 1.573) &lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Erika&lt;br /&gt;
&lt;br /&gt;
[http://arjournals.annualreviews.org/loi/bioeng;jsessionid=o0AwcCow3M48 Annual Review of Biomedical Engineering] (2002 3.537)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh M.&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com/science?_ob=JournalURL&amp;amp;_cdi=5074&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=5628a498ee2c4c8c03998426a4fa02bd Journal of Biomechanics] (2002 1.889)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Graeme&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com.ezproxy.lib.ucalgary.ca:2048/science?_ob=JournalURL&amp;amp;_cdi=6979&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=4374752f61a4ccf8ae807c734ffb6867 Osteoarthritis and Cartilage] (2004 3.572)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Graeme&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com.ezproxy.lib.ucalgary.ca:2048/science?_ob=JournalURL&amp;amp;_cdi=6633&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=7a0210a3980a9920e6bdb9978594d646 Journal of Orthopedic Research] (2004: 2.720)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Erika&lt;br /&gt;
&lt;br /&gt;
[http://scitation.aip.org/ASMEJournals/Biomechanical/ Journal of Biomechanical Engineering] (2003 1.6)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh K.&lt;br /&gt;
&lt;br /&gt;
===Low Priority Journals===&lt;br /&gt;
&lt;br /&gt;
[http://www.sciencedirect.com/science?_ob=JournalURL&amp;amp;_cdi=4997&amp;amp;_auth=y&amp;amp;_acct=C000051253&amp;amp;_version=1&amp;amp;_urlVersion=0&amp;amp;_userid=1067480&amp;amp;md5=75f54fa07d8f798de0f3f0f3ccc8681a Clinical Biomechanics] (2002 0.996)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Graeme&lt;br /&gt;
&lt;br /&gt;
[http://www.tandf.co.uk/journals/online/1025-5842.asp Computer Methods in Biomechanics and Biomedical Engineering]&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Erika&lt;br /&gt;
&lt;br /&gt;
[http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=10 IEEE Transactions on Biomedical Engineering] (2002 1.665)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh K.&lt;br /&gt;
&lt;br /&gt;
[http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?puNumber=42 IEEE Transactions on Medical Imaging] (2002 2.911)&lt;br /&gt;
&lt;br /&gt;
Lab member responsible for this journal: Josh M.&lt;br /&gt;
&lt;br /&gt;
==Laboratory Equipment List==&lt;br /&gt;
&lt;br /&gt;
===Computers===&lt;br /&gt;
&lt;br /&gt;
* Percy - Alphastation DS15, single processor, HP1955, OpenVMS (KNB2225)&lt;br /&gt;
* Thomas - Alphastation DS25, dual processor, HP1955, OpenVMS (KNB2227A)&lt;br /&gt;
* Henry - HP XW4300, 2GB RAM, Windows XP, HP2035 (KNB2225)&lt;br /&gt;
* Donald - HP XW9300 dual processor, HP2035, 8GB RAM, Linux (KNB2225)&lt;br /&gt;
* Douglas - HP XW9300 single processor, HP2035, 2GB RAM, Linux (KNB2225)&lt;br /&gt;
* Lady - ECI original PC, 2GB RAM, 18&amp;quot; NEC, Linux (KNB2225)&lt;br /&gt;
* Daisy - ECI original PC, 2GB RAM, 18&amp;quot; NEC, Linux (KNB2225)&lt;br /&gt;
* Dennis - ECI original PC, 2GB RAM, 18&amp;quot; NEC, Linux (Fabio Ayres, KNB 2202)&lt;br /&gt;
* CCIT - ECI original PC, 2GB RAM, 18&amp;quot; NEC, Linux (CCIT 125)&lt;br /&gt;
* Edward - HP DX5150, 2GB RAM, HP1906, Windows XP (Kyle Nishiyama)&lt;br /&gt;
* Emily - HP DX5150, 2GB RAM, HP1906, Windows XP (Helen Buie)&lt;br /&gt;
* Gordon - HP DX5150, 2GB RAM, HP1906, Windows XP (Erika Kristensen)&lt;br /&gt;
* Toby - HP DX5150, 2GB RAM, HP1906, Windows XP (Graeme Campbell)&lt;br /&gt;
* Murdoch - IBM T43 laptop, 2GB RAM, Windows XP (Steven Boyd)&lt;br /&gt;
* Temple - SunBlade 2500, 4GB RAM, Sun 18&amp;quot; monitor, Solaris 10 (CCIT 125)&lt;br /&gt;
* Oliver - HP DX5750, 2GB RAM, AMD DualCore 2GHz, HP1940, Windows XP (Yves Pauchard)&lt;br /&gt;
&lt;br /&gt;
===Other equipment===&lt;br /&gt;
&lt;br /&gt;
* Nikon D70 w/ 28-80 lens&lt;br /&gt;
* Crystal eyes glasses (2 pair) and emitter&lt;br /&gt;
* Viewsonic G220fb&lt;br /&gt;
* HP LaserJet 4650dn&lt;br /&gt;
* Disk array on Thomas, 7x 300GB SCSI&lt;br /&gt;
* Disk array on HPL-NT, 6x 300GB SCSI&lt;br /&gt;
&lt;br /&gt;
===Third Floor Freezer===&lt;br /&gt;
&lt;br /&gt;
* Combination: 15-28-01&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1753</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1753"/>
		<updated>2007-11-09T20:15:46Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 5.0.3&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login{space}{enter}&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS (see SmartCVS below as option to WinCVS)&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\InsightToolkit-2.8.1\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
##Open C:\pack\InsightToolkit-2.8.1\bin\itk.dsw&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK as source code&lt;br /&gt;
#*c. Make C:\pack\VTK\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#*g. Enter &#039;3&#039; when asked which version of Qt&lt;br /&gt;
#*h. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*i. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*j. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\bin\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON	&lt;br /&gt;
#::BUILD_MIXED_PROJECTS: ON	&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Add the following environment variables:&lt;br /&gt;
##Open the Control Panel&lt;br /&gt;
##Double click and open &#039;System&#039;&lt;br /&gt;
##Go to the &#039;Advanced tab&#039; and click on the &#039;Environment Variables&#039; button&lt;br /&gt;
##In the System Variable Section click on the &#039;Path&#039; variable and click &#039;edit&#039;&lt;br /&gt;
##Add the following values separated by semi-colons&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\tetrapack\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\aimpack64\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Unsorted\Debug&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
##Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, see following section:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===SmartCVS===&lt;br /&gt;
&lt;br /&gt;
This program is an option instead of using WinCVS.  While it is easier to setup it is slower and WinCVS is preferred.&lt;br /&gt;
&lt;br /&gt;
#Download program from: http://www.syntevo.com/smartcvs/download.html&lt;br /&gt;
#Run program&lt;br /&gt;
#Choose “Check out project from repository”&lt;br /&gt;
##Click Manage&lt;br /&gt;
##Click Add&lt;br /&gt;
##Click “Enter CVS-Location”&lt;br /&gt;
##Type:  :ext:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
##Click “Next”&lt;br /&gt;
##Choose password or Public/Private Key&lt;br /&gt;
#Either enter password or load key file and passphrase&lt;br /&gt;
#Click ‘Finish’&lt;br /&gt;
#When back to Check out project window, click next and wait for checkout&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1742</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1742"/>
		<updated>2007-11-09T16:41:49Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 5.0.3&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login{space}{enter}&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS (see SmartCVS below as option to WinCVS)&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\InsightToolkit-2.8.1\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK as source code&lt;br /&gt;
#*c. Make C:\pack\VTK\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#*g. Enter &#039;3&#039; when asked which version of Qt&lt;br /&gt;
#*h. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*i. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*j. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON	&lt;br /&gt;
#::BUILD_MIXED_PROJECTS: ON	&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Add the following environment variables:&lt;br /&gt;
##Open the Control Panel&lt;br /&gt;
##Double click and open &#039;System&#039;&lt;br /&gt;
##Go to the &#039;Advanced tab&#039; and click on the &#039;Environment Variables&#039; button&lt;br /&gt;
##In the System Variable Section click on the &#039;Path&#039; variable and click &#039;edit&#039;&lt;br /&gt;
##Add the following values separated by semi-colons&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\tetrapack\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\aimpack64\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Unsorted\Debug&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\bin\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
##Open C:\pack\InsightToolkit-2.8.1\bin\itk.dsw&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
##Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, see following section:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===SmartCVS===&lt;br /&gt;
&lt;br /&gt;
This program is an option instead of using WinCVS.  While it is easier to setup it is slower and WinCVS is preferred.&lt;br /&gt;
&lt;br /&gt;
#Download program from: http://www.syntevo.com/smartcvs/download.html&lt;br /&gt;
#Run program&lt;br /&gt;
#Choose “Check out project from repository”&lt;br /&gt;
##Click Manage&lt;br /&gt;
##Click Add&lt;br /&gt;
##Click “Enter CVS-Location”&lt;br /&gt;
##Type:  :ext:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
##Click “Next”&lt;br /&gt;
##Choose password or Public/Private Key&lt;br /&gt;
#Either enter password or load key file and passphrase&lt;br /&gt;
#Click ‘Finish’&lt;br /&gt;
#When back to Check out project window, click next and wait for checkout&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1741</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1741"/>
		<updated>2007-11-09T16:36:51Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 5.0.3&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login{space}{enter}&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS (see SmartCVS below as option to WinCVS)&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\InsightToolkit-2.8.1\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK as source code&lt;br /&gt;
#*c. Make C:\pack\VTK\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#*g. Enter &#039;3&#039; when asked which version of Qt&lt;br /&gt;
#*h. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*i. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*j. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Add the following environment variables:&lt;br /&gt;
##Open the Control Panel&lt;br /&gt;
##Double click and open &#039;System&#039;&lt;br /&gt;
##Go to the &#039;Advanced tab&#039; and click on the &#039;Environment Variables&#039; button&lt;br /&gt;
##In the System Variable Section click on the &#039;Path&#039; variable and click &#039;edit&#039;&lt;br /&gt;
##Add the following values separated by semi-colons&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\tetrapack\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\aimpack64\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Unsorted\Debug&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
##Open C:\pack\ITK\itk.dsw&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
##Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, see following section:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===SmartCVS===&lt;br /&gt;
&lt;br /&gt;
This program is an option instead of using WinCVS.  While it is easier to setup it is slower and WinCVS is preferred.&lt;br /&gt;
&lt;br /&gt;
#Download program from: http://www.syntevo.com/smartcvs/download.html&lt;br /&gt;
#Run program&lt;br /&gt;
#Choose “Check out project from repository”&lt;br /&gt;
##Click Manage&lt;br /&gt;
##Click Add&lt;br /&gt;
##Click “Enter CVS-Location”&lt;br /&gt;
##Type:  :ext:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
##Click “Next”&lt;br /&gt;
##Choose password or Public/Private Key&lt;br /&gt;
#Either enter password or load key file and passphrase&lt;br /&gt;
#Click ‘Finish’&lt;br /&gt;
#When back to Check out project window, click next and wait for checkout&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1740</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1740"/>
		<updated>2007-11-09T16:35:18Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 5.0.3&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login{space}{enter}&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS (see SmartCVS below as option to WinCVS)&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\InsightToolkit-2.8.1\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK as source code&lt;br /&gt;
#*c. Make C:\pack\VTK\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#*g. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*h. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*i. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Add the following environment variables:&lt;br /&gt;
##Open the Control Panel&lt;br /&gt;
##Double click and open &#039;System&#039;&lt;br /&gt;
##Go to the &#039;Advanced tab&#039; and click on the &#039;Environment Variables&#039; button&lt;br /&gt;
##In the System Variable Section click on the &#039;Path&#039; variable and click &#039;edit&#039;&lt;br /&gt;
##Add the following values separated by semi-colons&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\tetrapack\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Utilities\aimpack64\Debug&lt;br /&gt;
#:::C:\pack\vtkMy\bin\Unsorted\Debug&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
##Open C:\pack\ITK\itk.dsw&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
##Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
##Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, see following section:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===SmartCVS===&lt;br /&gt;
&lt;br /&gt;
This program is an option instead of using WinCVS.  While it is easier to setup it is slower and WinCVS is preferred.&lt;br /&gt;
&lt;br /&gt;
#Download program from: http://www.syntevo.com/smartcvs/download.html&lt;br /&gt;
#Run program&lt;br /&gt;
#Choose “Check out project from repository”&lt;br /&gt;
##Click Manage&lt;br /&gt;
##Click Add&lt;br /&gt;
##Click “Enter CVS-Location”&lt;br /&gt;
##Type:  :ext:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
##Click “Next”&lt;br /&gt;
##Choose password or Public/Private Key&lt;br /&gt;
#Either enter password or load key file and passphrase&lt;br /&gt;
#Click ‘Finish’&lt;br /&gt;
#When back to Check out project window, click next and wait for checkout&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1739</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1739"/>
		<updated>2007-11-09T16:23:37Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* SmartCVS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 5.0.3&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login{space}{enter}&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS (see SmartCVS below as option to WinCVS)&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\InsightToolkit-2.8.1\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK as source code&lt;br /&gt;
#*c. Make C:\pack\VTK\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#*g. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*h. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*i. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, see following section:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===SmartCVS===&lt;br /&gt;
&lt;br /&gt;
This program is an option instead of using WinCVS.  While it is easier to setup it is slower and WinCVS is preferred.&lt;br /&gt;
&lt;br /&gt;
#Download program from: http://www.syntevo.com/smartcvs/download.html&lt;br /&gt;
#Run program&lt;br /&gt;
#Choose “Check out project from repository”&lt;br /&gt;
##Click Manage&lt;br /&gt;
##Click Add&lt;br /&gt;
##Click “Enter CVS-Location”&lt;br /&gt;
##Type:  :ext:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
##Click “Next”&lt;br /&gt;
##Choose password or Public/Private Key&lt;br /&gt;
#Either enter password or load key file and passphrase&lt;br /&gt;
#Click ‘Finish’&lt;br /&gt;
#When back to Check out project window, click next and wait for checkout&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1738</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1738"/>
		<updated>2007-11-09T16:20:59Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 5.0.3&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login{space}{enter}&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS (see SmartCVS below as option to WinCVS)&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\InsightToolkit-2.8.1\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK as source code&lt;br /&gt;
#*c. Make C:\pack\VTK\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#*g. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*h. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*i. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, see following section:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===SmartCVS===&lt;br /&gt;
&lt;br /&gt;
This program is an option instead of using WinCVS.  However is slower and WinCVS is preferred.&lt;br /&gt;
&lt;br /&gt;
#Download program from: http://www.syntevo.com/smartcvs/download.html&lt;br /&gt;
#Run program&lt;br /&gt;
#Choose “Check out project from repository”&lt;br /&gt;
##Click Manage&lt;br /&gt;
##Click Add&lt;br /&gt;
##Click “Enter CVS-Location”&lt;br /&gt;
##Type:  :ext:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
##Click “Next”&lt;br /&gt;
##Choose password or Public/Private Key&lt;br /&gt;
#Either enter password or load key file and passphrase&lt;br /&gt;
#Click ‘Finish’&lt;br /&gt;
#When back to Check out project window, click next and wait for checkout&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1737</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1737"/>
		<updated>2007-11-09T16:02:33Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 5.0.3&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login{space}{enter}&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\InsightToolkit-2.8.1\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK as source code&lt;br /&gt;
#*c. Make C:\pack\VTK\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#*g. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*h. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*i. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, but not tested:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1736</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1736"/>
		<updated>2007-11-02T20:21:13Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 2006-09-01&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login&amp;lt;br&amp;gt;&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d 2006-09-01 VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\ITK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK-2006-09-01 as source code&lt;br /&gt;
#*c. Make C:\pack\VTK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#::VTK_USE_GUISUPPORT:	ON&lt;br /&gt;
#*f. Click ‘Configure’, then new red values should appear&lt;br /&gt;
#::VTK_USE_QVTK: ON&lt;br /&gt;
#*g. Click ‘Configure’, then new red values should appear, leave as defaults&lt;br /&gt;
#*h. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*i. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, but not tested:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1723</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1723"/>
		<updated>2007-11-02T18:24:59Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 2006-09-01&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login&amp;lt;br&amp;gt;&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d 2006-09-01 VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\ITK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK-2006-09-01 as source code&lt;br /&gt;
#*c. Make C:\pack\VTK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, but not tested:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1722</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1722"/>
		<updated>2007-11-02T18:24:40Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 2006-09-01&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#:*Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login&amp;lt;br&amp;gt;&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d 2006-09-01 VTK&lt;br /&gt;
#:*Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\ITK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK-2006-09-01 as source code&lt;br /&gt;
#*c. Make C:\pack\VTK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, but not tested:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1721</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1721"/>
		<updated>2007-11-02T18:23:10Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 2006-09-01&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login&amp;lt;br&amp;gt;&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d 2006-09-01 VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\ITK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK-2006-09-01 as source code&lt;br /&gt;
#*c. Make C:\pack\VTK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.JPG|center]]&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, but not tested:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1720</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1720"/>
		<updated>2007-11-02T18:17:30Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy Development - Windows Setup: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup:===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 2006-09-01&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login&amp;lt;br&amp;gt;&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d 2006-09-01 VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\ITK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK-2006-09-01 as source code&lt;br /&gt;
#*c. Make C:\pack\VTK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:qtOptions.jpg|center]]&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, but not tested:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=File:QtOptions.JPG&amp;diff=2929</id>
		<title>File:QtOptions.JPG</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=File:QtOptions.JPG&amp;diff=2929"/>
		<updated>2007-11-02T18:16:57Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1719</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1719"/>
		<updated>2007-11-02T18:14:37Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* vtkMy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
===vtkMy Development - Windows Setup:===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 2006-09-01&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login&amp;lt;br&amp;gt;&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d 2006-09-01 VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\ITK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK-2006-09-01 as source code&lt;br /&gt;
#*c. Make C:\pack\VTK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 [[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, but not tested:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
	<entry>
		<id>https://bone.wiki/index.php?title=Developer&amp;diff=1718</id>
		<title>Developer</title>
		<link rel="alternate" type="text/html" href="https://bone.wiki/index.php?title=Developer&amp;diff=1718"/>
		<updated>2007-11-02T18:11:18Z</updated>

		<summary type="html">&lt;p&gt;Kksnishi: /* WinCVS and PuTTY for vtkMy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Hardware==&lt;br /&gt;
&lt;br /&gt;
Used Alpha stations at http://www.islandco.com&lt;br /&gt;
&lt;br /&gt;
==VMS Development==&lt;br /&gt;
&lt;br /&gt;
===Getting started===&lt;br /&gt;
&lt;br /&gt;
Editor:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the editor&lt;br /&gt;
$ eve == &amp;quot;spawn/nowait edit/display=decwindows/tpu&amp;quot;&lt;br /&gt;
$ eve filename.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$! Define the compiler&lt;br /&gt;
$ C64 :== CC/POINTER_SIZE=64/check=pointer=all/optimize=(tune=ev6,level=5)&lt;br /&gt;
&lt;br /&gt;
$! Compile the program &#039;ipl_scanco_c&#039; and link it to existing libraries&lt;br /&gt;
$ c64 ipl:ipl_scanco_c&lt;br /&gt;
$!&lt;br /&gt;
$ link /exe=ipl:ipl_SCANCO_c -&lt;br /&gt;
        ipl:ipl_scanco_c, -&lt;br /&gt;
        ipl:ipl_scanco_c_ident/opt, -&lt;br /&gt;
        ipl:ipl_proc/lib, -&lt;br /&gt;
        ipl:ipl/lib, -&lt;br /&gt;
        mu:scanco_ext/lib, -&lt;br /&gt;
        dsrc:d3p_scanco/lib, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SCTHIN (DS10L)===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
duck.kin.ucalgary.ca has been assigned IP address 136.159.130.33&lt;br /&gt;
netmask 255.255.255.0&lt;br /&gt;
default router 136.159.130.34&lt;br /&gt;
DNS servers 136.159.130.130, 136.159.130.3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login &amp;lt;code&amp;gt;microct&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;devel&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;not2lame&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
To boot into the cluster &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot ewa0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
To boot out of the cluster, unplug the ethernet cable and&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;boot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get to boot prompt, type &amp;lt;code&amp;gt;shutdown&amp;lt;/code&amp;gt; on the login screen.  Or, after powerdown, hit &amp;lt;code&amp;gt;ctrl-P&amp;lt;/code&amp;gt; repeatedly.&lt;br /&gt;
&lt;br /&gt;
There are two accounts:&lt;br /&gt;
:*microct&lt;br /&gt;
:*devel&lt;br /&gt;
&lt;br /&gt;
===Installing packages on VMS===&lt;br /&gt;
&lt;br /&gt;
Contacts:&lt;br /&gt;
Piet Schuermans&lt;br /&gt;
Mark Blanchard&lt;br /&gt;
&lt;br /&gt;
====Freeware source====&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware80/&lt;br /&gt;
&lt;br /&gt;
Instructions for unpacking .tar.gz files on VMS&lt;br /&gt;
:1. Rename the file to file.tgz&lt;br /&gt;
:2. gunzip file.tgz (creates a file.tar)&lt;br /&gt;
:3. vmstar file.tar&lt;br /&gt;
&lt;br /&gt;
====VMSTAR====&lt;br /&gt;
&lt;br /&gt;
A tar program for VMS.&lt;br /&gt;
&lt;br /&gt;
Either install from the source (build it), or apparently the binary can be downloaded from&lt;br /&gt;
&lt;br /&gt;
http://h71000.www7.hp.com/freeware/freeware50/vmstar/alpha/&lt;br /&gt;
&lt;br /&gt;
where you will find VMSTAR.EXE&lt;br /&gt;
&lt;br /&gt;
When extracting files that contain &amp;quot;unix&amp;quot; filenames (e.g., config.h.in), make sure to extract the files with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvstar xof file.tar  ! Option &#039;o&#039; extracts ODS5 files with ODS2 format&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====CVS====&lt;br /&gt;
&lt;br /&gt;
The sources can be retrieved from http://ftp.gnu.org/non-gnu/cvs/source/stable/&lt;br /&gt;
&lt;br /&gt;
You will need a C compiler on OpenVMS.  There are several versions of CVS available, but all of them need some tweaking before they can be successfully built.&lt;br /&gt;
&lt;br /&gt;
:cvs-1.11.18 (see build instructions at http://lists.gnu.org/archive/html/bug-cvs/2005-01/msg00280.html)&lt;br /&gt;
:cvs-1.11.21 (do not use)&lt;br /&gt;
:cvs-1.11.22 (latest version as of May 26, 2007 -- may be built, but follow instructions as per v.18 above)&lt;br /&gt;
&lt;br /&gt;
Download the .tar.gz file, rename it to .tgz once on vms system, use gunzip then vmstar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ rename cvs-1.11.22.tar.gz cvs-1.11.22.tgz&lt;br /&gt;
$ gunzip cvs-1.11.22.tgz&lt;br /&gt;
$ vmstar xof cvs-1.11.22.tar  ! option &#039;o&#039; allows ODS2 naming.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For all versions, make the following changes before starting:&lt;br /&gt;
:1. Before you attempt to compile 1.11.22 or later you will need make a copy of [.LIB]FNMATCH_H.IN as [.LIB]FNMATCH.H&lt;br /&gt;
:2. Correct typo in [.SRC]BUILD_SRC.COM  change &amp;quot;libz&amp;quot; to &amp;quot;zlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Note:&amp;lt;/b&amp;gt;&lt;br /&gt;
The directory names would have been cvs-1.11.21.dir on Linux.  However VMS doesn&#039;t allow more than 1 . in the name.  If you enter&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ set process/parse=extended&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in a terminal you&#039;ll be able to access these files.  You rename them (i.e. cvs-1_11_21.dir).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE&amp;lt;/b&amp;gt;&lt;br /&gt;
Piet Schuermans (mailps@mac.com) sent me a binary version of CVS on May 25, 2007 that I am currently using.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;USAGE&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that I have a &amp;quot;getting started on cvs for vms&amp;quot; document that can help.  &lt;br /&gt;
&lt;br /&gt;
OpenVMS is case sensitive for passing parameters. So put the parameters between &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; login&lt;br /&gt;
$ cvs -d &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot; co &amp;quot;vtknew/CMake&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your using this repository location frequently then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ define cvsroot &amp;quot;:pserver:anonymous@public.kitware.com:/cvsroot/VTK&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
after this you can skip the -d ...... parameter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs login&lt;br /&gt;
vtk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will create .cvspass file in your home directory so your only  &lt;br /&gt;
need to use the cvs login once&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cvs co &amp;quot;vtknew&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
public.kitware.com has ip address 66.194.253.19&lt;br /&gt;
&lt;br /&gt;
===Update VMS licenses===&lt;br /&gt;
&lt;br /&gt;
As user system:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ lic list/full&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and check which licenses are currently from &#039;MONTAGAR&#039; and expire on Aug 31.&lt;br /&gt;
&lt;br /&gt;
I recommend to only then replace those licenses with the new ones, and not load the whole license text file that you get from HP.  Make a &#039;shortlist&#039; of the licenses you need, then FTP them to the VMS system and copy and paste.&lt;br /&gt;
&lt;br /&gt;
Layered Products (any licence, but NOT the openvms-Alpha itself!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic del OPENVMS-ALPHA-USER&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA-USER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-BBME-NKAP-EAFK-CNCA&lt;br /&gt;
$ lic load OPENVMS-ALPHA-USER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$ lic del vmscluster&lt;br /&gt;
$ LICENSE REGISTER VMSCLUSTER	-&lt;br /&gt;
	/ACTIVITY=CONSTANT=100	-&lt;br /&gt;
	/AUTHORIZATION=EDU-711643-12345	-&lt;br /&gt;
	/DATE=31-AUG-2007	-&lt;br /&gt;
	/ISSUER=MONTAGAR	-&lt;br /&gt;
	/PRODUCER=DEC	-&lt;br /&gt;
	/TERMINATION=31-AUG-2007	-&lt;br /&gt;
	/UNITS=0	-&lt;br /&gt;
	/CHECKSUM=1-GOOP-ALPF-PGKG-OBND&lt;br /&gt;
$ lic load vmscluster&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, on SCTHIN, for the basic &#039;openvms-alpha&#039; license itself. In a cluster, this license must be limited to one computer only, so first, to delete the correct of the multiple openvms-alpha licenses only.  If I ever wanted SCTHIN to be the server in a cluster, I should do the following (very unlikely!):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lic list openvms-alpha/ful&lt;br /&gt;
&lt;br /&gt;
$ lic delete openvms-alpha/auth=xxxxxx&lt;br /&gt;
! after first looking up the authori. of that montagar license.&lt;br /&gt;
&lt;br /&gt;
$ LICENSE REGISTER OPENVMS-ALPHA -&lt;br /&gt;
/ISSUER=MONTAGAR -&lt;br /&gt;
/AUTHORIZATION=EDU-742405-743161 -&lt;br /&gt;
/PRODUCER=DEC -&lt;br /&gt;
/UNITS=0 -&lt;br /&gt;
/TERMINATION_DATE=31-AUG-2008  -&lt;br /&gt;
/ACTIVITY=A -&lt;br /&gt;
/OPTIONS=(NO_SHARE) -&lt;br /&gt;
/CHECKSUM=2-JMOA-GOFL-AKID-DHCJ&lt;br /&gt;
&lt;br /&gt;
$ lic modify openvms-alpha/auth=EDU-742405-743161/include=scthin&lt;br /&gt;
! to make it available to scthin only.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MMS: VMS &#039;make&#039; tool===&lt;br /&gt;
&lt;br /&gt;
To start:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mms&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example from Bruno Koller of &amp;lt;code&amp;gt;descrip.mms&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.IGNORE&lt;br /&gt;
FFLAGS  = /FAST/OPT=(LEVEL=5,TUNE=EV68,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ&lt;br /&gt;
FGENER  = /ALIGN=(NATURAL,SEQUENCE)/ASSUME=NOACCURACY/OPT=(LEVEL=5,TUNE=GENERIC,INL=ALL)/OBJECT=$(MMS$TARGET_NAME).OBJ_G&lt;br /&gt;
&lt;br /&gt;
.FOR.OBJ&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
.FOR.INC&lt;br /&gt;
        $(FORT)$(FFLAGS) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
        $(FORT)$(FGENER) UD:$(MMS$TARGET_NAME).FOR&lt;br /&gt;
&lt;br /&gt;
all  :: uct_reconstruction.exe, uct_reconstruction.exe_generic&lt;br /&gt;
        write sys$output &amp;quot;UCT_RECONSTRUCTION.EXE generated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe :: -&lt;br /&gt;
        recoident.opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj, -&lt;br /&gt;
        rebinning.obj, -&lt;br /&gt;
        raw_to_rpro.obj, -&lt;br /&gt;
        conereco.obj&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj, -&lt;br /&gt;
        calc_fan_beam_angles, -&lt;br /&gt;
        rebinning, -&lt;br /&gt;
        raw_to_rpro, -&lt;br /&gt;
        conereco, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.exe_generic :: -&lt;br /&gt;
        recoident.opt_g, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g&lt;br /&gt;
&lt;br /&gt;
        link/exe=uct_reconstruction.exe_generic -&lt;br /&gt;
        recoident/opt, -&lt;br /&gt;
        uct_reconstruction.obj_g, -&lt;br /&gt;
        calc_fan_beam_angles.obj_g, -&lt;br /&gt;
        raw_to_rpro.obj_g, -&lt;br /&gt;
        rebinning.obj_g, -&lt;br /&gt;
        conereco.obj_g, -&lt;br /&gt;
        scanco_lib/lib&lt;br /&gt;
&lt;br /&gt;
uct_reconstruction.obj :: ud:uct_reconstruction.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
calc_fan_beam_angles.obj :: ud:calc_fan_beam_angles.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
raw_to_rpro.obj :: ud:raw_to_rpro.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc&lt;br /&gt;
&lt;br /&gt;
rebinning.obj :: ud:rebinning.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc, -&lt;br /&gt;
        scli:ctdata_header_structure.inc&lt;br /&gt;
&lt;br /&gt;
conereco.obj :: ud:conereco.for, -&lt;br /&gt;
        scli:uct_reco_constants.inc &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some notes:&lt;br /&gt;
:*UD is a logical for user disk search list over different disks, so I can compile on both alpha and vax with just having one source.&lt;br /&gt;
&lt;br /&gt;
:*No need to put &amp;quot;ud:&amp;quot; at your site. Also, a few lines may have been wrapped which should be on one line (/fflag...) by the mail program.&lt;br /&gt;
&lt;br /&gt;
:*Let me know if you want the mms installation file, you will need the hp campus mms license herefore (which you may already have)&lt;br /&gt;
&lt;br /&gt;
===Alternative to MMS: MMK===&lt;br /&gt;
&lt;br /&gt;
A free MMS replacement is called Madgoat MMK (http://www.madgoat.com/mmk.html).&lt;br /&gt;
&lt;br /&gt;
===Alternative to EVE: NEDIT===&lt;br /&gt;
&lt;br /&gt;
NEDIT is also available for VMS and offers a nicer editor, in my opinion (Mark Blanchard).&lt;br /&gt;
&lt;br /&gt;
===Online VMS discussion lists===&lt;br /&gt;
&lt;br /&gt;
info-vax (comp.os.vms)&lt;br /&gt;
&lt;br /&gt;
==Linux Machines==&lt;br /&gt;
&lt;br /&gt;
===Accessing Sodor disk===&lt;br /&gt;
&lt;br /&gt;
From Konqueror in KDE, use a path like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;smb://HPL-NT\sboyd@hal/Sodor&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==vtkMy==&lt;br /&gt;
&lt;br /&gt;
vtkMy Development&lt;br /&gt;
&lt;br /&gt;
Windows Setup:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Required Software:&amp;lt;br&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
Cmake 2.4.7 &amp;lt;br&amp;gt;&lt;br /&gt;
WinCVS 2.0&amp;lt;br&amp;gt;&lt;br /&gt;
ITK 2.8.1&amp;lt;br&amp;gt;&lt;br /&gt;
VTK 2006-09-01&amp;lt;br&amp;gt;&lt;br /&gt;
Qt 3.3.6 Academic&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#Create directory C:\pack to keep all programs&lt;br /&gt;
#Download and install cmake-2.4.7.zip from: http://www.cmake.org/HTML/Download.html&lt;br /&gt;
#Download and install WinCvs 2.0.2.4 (released 2005-08-15) from:http://www.wincvs.org/download.html#WINCVS&lt;br /&gt;
#Download InsightToolkit-2.8.1.zip (hosted at SourceForge) from:http://www.itk.org/HTML/Download.htm&lt;br /&gt;
#Use WinCVS to download source files for VTK:&lt;br /&gt;
#*a. Open WinCVS and click menu Admin-&amp;gt; Preferences-&amp;gt; CVS Tab&lt;br /&gt;
#**Enter HOME: C:\pack&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#*b. Open menu Admin-&amp;gt; Command Line &lt;br /&gt;
#**Enter the following:&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK login&amp;lt;br&amp;gt;&lt;br /&gt;
#:::cvs -d :pserver:anonymous@public.kitware.com:/cvsroot/VTK checkout –d 2006-09-01 VTK&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for the password. Enter: vtk&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Download vtkMy source using WinCVS&lt;br /&gt;
#*a. Verify home directory as set up in Step 5.a.i.&lt;br /&gt;
#*b. 	Open menu Remote-&amp;gt; Checkout Module&lt;br /&gt;
#**	Enter the following settings:&lt;br /&gt;
#:::Module name and path on server: vtkMy&lt;br /&gt;
#:::Local folder to checkout to: C:\pack\&lt;br /&gt;
#:::Check box: CVSROOT&lt;br /&gt;
#:::CVSROOT: :ssh:username@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#**Click Ok&lt;br /&gt;
#**You will be prompted for your password to access the machine&lt;br /&gt;
#**Wait for checkout to complete&lt;br /&gt;
#Build ITK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\InsightToolkit-2.8.1 as source code&lt;br /&gt;
#*c. Make C:\pack\ITK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Use the following Cache values:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\VTK-2006-09-01 as source code&lt;br /&gt;
#*c. Make C:\pack\VTK binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ checkbox and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_EXAMPLES: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TESTING: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTK&lt;br /&gt;
#::VTK_USE_ANSI_STDLIB:	ON&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Install Qt 3.3.6 Academic version&lt;br /&gt;
#*a. Run “qt-win-academic-3.3.6.exe”&lt;br /&gt;
#*b. When asked for license information choose to use license file and open “qt-license-3.3.6”&lt;br /&gt;
#*c. For installation options use defaults and be sure to build with shared libraries in Step 8 &lt;br /&gt;
#:IMAGE&lt;br /&gt;
#Build vtkMy using Cmake&lt;br /&gt;
#*a. Open Cmake&lt;br /&gt;
#*b. Choose C:\pack\vtkMy\src as source code&lt;br /&gt;
#*c. Make C:\pack\vtkMy\bin binary code location&lt;br /&gt;
#*d. Click ‘Configure’ and choose desired compiler&lt;br /&gt;
#*e. Click the ‘Show Advanced Values’ check box and verify the following settings, all others can be left as defaults:&lt;br /&gt;
#::BUILD_APPLICATIONS: ON&lt;br /&gt;
#::BUILD_SHARED_LIBS: ON&lt;br /&gt;
#::BUILD_TEST_PROJECTS: ON		&lt;br /&gt;
#::BUILD_BACKWARDS_COMPATIBILITY: 2.4&lt;br /&gt;
#::CMAKE_INSTALL_PREFIX: C:/Program Files/VTKMY&lt;br /&gt;
#::USE_ITK: ON&lt;br /&gt;
#::USE_QT: ON&lt;br /&gt;
#::USE_FLTK: OFF&lt;br /&gt;
#::VTK_DIR: C:/pack/VTK&lt;br /&gt;
#::ITK_DIR: C:/pack/ITK&lt;br /&gt;
#*f. Click ‘Configure’, all red values should turn grey&lt;br /&gt;
#*g. May have to click configure again if any red values are still present&lt;br /&gt;
#*h. Click ‘Ok’, wait as Cmake will close automatically&lt;br /&gt;
#Build VTK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
## Open C:\pack\VTK\vtk.dsw&lt;br /&gt;
## Click ‘Build’&lt;br /&gt;
#Build ITK using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\ITK\itk.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
#Build vtkMy using Visual C++ 6.0 (or desired program)&lt;br /&gt;
#*a. Open C:\pack\vtkMy\bin\vtkmy.dsw&lt;br /&gt;
#*b. Click ‘Build’&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===WinCVS and PuTTY for vtkMy===&lt;br /&gt;
&lt;br /&gt;
NOTE: An alternative CVS client has been suggested, but not tested:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SmartCVS from www.syntevo.com with a foundation license. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up WinCVS to use PuTTY is fairly straightforward, but does require a few configuration settings in addition to installing the software. You can do it with the following steps. &lt;br /&gt;
&lt;br /&gt;
#Install PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/). &lt;br /&gt;
#Install wincvs (http://www.wincvs.org/)&lt;br /&gt;
#Make a key:&lt;br /&gt;
#*Follow menus: Start/Programs/PuTTY/PuTTYgen From the PuTTY Manual: &amp;lt;br&amp;gt;&lt;br /&gt;
#:...press the &amp;quot;Generate&amp;quot; button and PuTTYgen will begin the process of actually generating the key. &lt;br /&gt;
#*First, a progress bar will appear and PuTTYgen will ask you to move the mouse around to generate randomness. Wave the mouse in circles over the blank area in the PuTTYgen window, and the progress bar will gradually fill up as PuTTYgen collects enough randomness. You don&#039;t need to wave the mouse in particularly imaginative patterns (although it can&#039;t hurt); PuTTYgen will collect enough randomness just from the fine detail of exactly how far the mouse has moved each time Windows samples its position. &lt;br /&gt;
#*When the progress bar reaches the end, PuTTYgen will begin creating the key. The progress bar will reset to the start, and gradually move up again to track the progress of the key generation. It will not move evenly, and may occasionally slow down to a stop; this is unfortunately unavoidable, because key generation is a random process and it is impossible to reliably predict how long it will take. &lt;br /&gt;
#*When the key generation is complete, a new set of controls will appear in the window to indicate this. &lt;br /&gt;
[[Image:putty_key_generator.jpg|center]]&lt;br /&gt;
#	Set the key comment and password. Set the key comment to your email address by typing it into the &amp;quot;Key Comment&amp;quot; box. Set the password by entering it twice, once in the &amp;quot;Key passphrase&amp;quot; box and once in the &amp;quot;Confirm Passphrase&amp;quot; box. &lt;br /&gt;
#Save the keys:&amp;lt;br&amp;gt; save the public key on your desktop as &amp;lt;code&amp;gt;identity.pub&amp;lt;/code&amp;gt; and the private one as &amp;lt;code&amp;gt;identity.ppk&amp;lt;/code&amp;gt; &lt;br /&gt;
#Email the identity.pub file as an attachment to skboyd@ucalgary.ca and ask for it to be added to the .ssh/authorized_keys file for your cvs repository. Please specify which repository you are requesting access to in the e-mail (i.e., vtkMy). &lt;br /&gt;
#Setup environment variables &lt;br /&gt;
#*	Choose Menus:&amp;lt;br&amp;gt;Start/Settings/Control Panel &lt;br /&gt;
#*	Double click on the &amp;quot;System&amp;quot; Control Panel &lt;br /&gt;
#*	Pick the &amp;quot;Advanced&amp;quot; tab and pick &amp;quot;Environment Varibles...&amp;quot; &lt;br /&gt;
#*	Add User environement variables &lt;br /&gt;
#:-	Add PLINK_PROTOCOL value &amp;quot;ssh&amp;quot; &lt;br /&gt;
#:- Add CVS_RSH value &amp;quot;plink&amp;quot; &lt;br /&gt;
#:-	Edit or Add PATH appending value &amp;quot;;C:\Program Files\PuTTY&amp;quot; &lt;br /&gt;
#	In WinCVS, bring up the &amp;quot;Preferences&amp;quot; dialogue box from the Admin menu&lt;br /&gt;
#*	In the &amp;quot;General&amp;quot; tab put in your CVSROOT value, (i.e. &amp;lt;code&amp;gt;:ext:myusername@m177.enme.ucalgary.ca:/localhost/cvsroot&amp;lt;/code&amp;gt;)&amp;lt;br&amp;gt;[[Image:Wincvs general.jpg|center]]&lt;br /&gt;
#* Switch to the &amp;quot;Ports&amp;quot; tab.&lt;br /&gt;
#* Tick the box there labelled &amp;quot;Check for an alternate rsh name&amp;quot; and in the text entry field to the right enter &amp;quot;plink&amp;quot;. &amp;lt;BR&amp;gt;[[Image:Wincvs ports tab.jpg|center]]&lt;br /&gt;
#* Select &amp;quot;OK&amp;quot; on teh &amp;quot;Preferences&amp;quot; dialogue box.&lt;br /&gt;
# Once you&#039;ve heard back from the administrator (skboyd) that your ssh keys have been added, test your putty key configuration: &lt;br /&gt;
#*Double click on &amp;quot;identity.ppk&amp;quot; on your desktop. If this doesn’t start pagaent.exe automatically, then manually start the program from the directory you installed putty.exe.&lt;br /&gt;
#* If your identity file isn&#039;t already loaded, you will be prompted for the password you entered in step 4. &lt;br /&gt;
#*The Pageant icon (a little PC with a hat) should appear in the bottom right menu bar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be able to use WinCVS to access the repository, with a secure connection whenever Pageant is running. You can start Pageant by double-clicking on your identity.ppk file.&lt;br /&gt;
&lt;br /&gt;
===Setting up CVS access from Linux/Unix===&lt;br /&gt;
*To understand the codes for a CVS update, see page 121 of CVS users guide, section A.16.2.&lt;br /&gt;
#	Valuable resource for understanding ssh:&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc.html&lt;br /&gt;
#*	http://www-106.ibm.com/developerworks/library/l-keyc2/&lt;br /&gt;
#	Setting up SSH access from &amp;quot;localbox&amp;quot; to &amp;quot;remotebox&amp;quot;: &amp;lt;BR&amp;gt; &amp;lt;U&amp;gt;Localbox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	ssh-keygen -t rsa [use a passphrase]&lt;br /&gt;
#:	NOTE: Put the &amp;quot;id_rsa&amp;quot; (private file) in ~/.ssh.  There should only be one of these on a 	machine account.&lt;br /&gt;
#:	NOTE: Put the “id_rsa.pub�? (public file) in ~/.ssh as “authorized_keys�? on remote machines; see “Remotebox�? below.&lt;br /&gt;
#*	scp identity.pub skboyd@remotebox: [don&#039;t forget the last colon]&lt;br /&gt;
#*	in ~/.bashrc:&lt;br /&gt;
#*	export CVS_RSH=ssh&lt;br /&gt;
#*	export CVSROOT=:ext:skboyd@m177.enme.ucalgary.ca:/localhost/cvsroot&lt;br /&gt;
#*	eval `ssh-agent` {use the funny back single quotes} &lt;br /&gt;
:&amp;lt;BR&amp;gt;&amp;lt;U&amp;gt;Remotebox:&amp;lt;/U&amp;gt;&lt;br /&gt;
#*	cat identity.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;
#	To avoid writing your passphrase every time you log on, run: &lt;br /&gt;
#*	ssh-add&lt;br /&gt;
#:	Should work if ssh-agent is already running (eval `ssh-agent`  in the .bashrc file).&lt;br /&gt;
#	Do the following to limit access to cvs for the users:&lt;br /&gt;
#*	edit the public key installed in the .ssh/authorized_keys file with the following at the beginning of the public key line:&lt;br /&gt;
#:		command=&amp;quot;/usr/bin/ssh server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;U&amp;gt;NOTES ABOUT KEYS&amp;lt;/U&amp;gt;&lt;br /&gt;
 Remember, the &amp;quot;authorized_keys&amp;quot; file is a concatenation of public (id_rsa.pub) keys, &lt;br /&gt;
 and the &amp;quot;id_rsa&amp;quot; is the private key.  &lt;br /&gt;
 Every user on every computer should only have ONE &amp;quot;id_rsa&amp;quot; file, &lt;br /&gt;
 but can have multiple &amp;quot;id_rsa.pub&amp;quot; files concatenated into&lt;br /&gt;
 their &amp;quot;authorized_keys&amp;quot; file.&lt;br /&gt;
&lt;br /&gt;
===Using CVS from a command line===&lt;br /&gt;
# To find a difference:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To add a new file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs add mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mynewfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To update local file:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP &amp;lt;/code&amp;gt;&lt;br /&gt;
#: or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update -dCP myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
# To check if a more recent version is available:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs diff myfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
#:  or&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs update &amp;lt;/code&amp;gt; &lt;br /&gt;
# To update CVS repository:&lt;br /&gt;
#* &amp;lt;code&amp;gt; $ cvs commit mylocalfile.cxx &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a project to vtkMy===&lt;br /&gt;
&lt;br /&gt;
# Add a new project directory in the vtkMy/src/Applications directory.&lt;br /&gt;
# Update the CMakeLists.txt file in /src/Applications to include the new directory in the SUBDIRS() list.&lt;br /&gt;
# Copy the CMakeLists.txt and source code files from an existing project such as AppMohr and put them into the new directory. These files can be edited for your new project.&lt;br /&gt;
# Edit the copied CMakeList.txt file and the change the name of the .cxx to the name of the new project.&lt;br /&gt;
# Run CMake, taking the source code from vtkMy/src and building the binaries in vtkMy/bin.&lt;br /&gt;
# Open the Visual C++ workspace and edit the source code (since at the moment it will be a duplicate of whatever project you copied in step 3).&lt;br /&gt;
# Compile your new code. Usually, all the development should be done in the “Debug�? mode (rather than “Release�?, etc.).&lt;br /&gt;
# If, to run your application, you need to include command line arguments, go to the menu item [Project][Settings], and on the ‘debug’ tab set the Program Arguments as shown.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:VtkMy_Project_Settings.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==XEmacs==&lt;br /&gt;
&lt;br /&gt;
===Pretty print===&lt;br /&gt;
&lt;br /&gt;
:*For colour printing, select &amp;quot;Options&amp;quot;, &amp;quot;Syntax Highlighting&amp;quot;, &amp;quot;In this buffer&amp;quot;&lt;br /&gt;
:*In &amp;quot;Page Setup&amp;quot; set the margins to be 10 mm on the left and rights sides&lt;br /&gt;
:*In the &amp;quot;Printer Properties&amp;quot; on the &amp;quot;Effects&amp;quot; tab, use 90% of Normal size&lt;br /&gt;
&lt;br /&gt;
==C Shell Scripts==&lt;br /&gt;
&lt;br /&gt;
These scripts must be executable.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ chmod 775 myscript.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 1===&lt;br /&gt;
&lt;br /&gt;
This file &amp;lt;code&amp;gt;aim2voi.com&amp;lt;/code&amp;gt; shows the use of command line arguments in a CSH script.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 1) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
aix $1.aim &amp;gt; $1.dsc&lt;br /&gt;
aic2voi $1.aim $1.voi&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2voi aim_filename (without aim extension)&amp;quot;&lt;br /&gt;
echo &amp;quot;will create a voi and dsc file from an aim&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 2===&lt;br /&gt;
&lt;br /&gt;
Similar to above, but &amp;lt;code&amp;gt;aim2bid.com&amp;lt;/code&amp;gt; generates a temporary file called &amp;lt;code&amp;gt;stack&amp;lt;/code&amp;gt; which&lt;br /&gt;
is used as input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
onintr end&lt;br /&gt;
if ($#argv &amp;lt; 4) goto usage&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
set i = $3&lt;br /&gt;
while ($i &amp;lt;= $4)&lt;br /&gt;
  set nr = $i&lt;br /&gt;
  if ($nr&amp;lt;10)  set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  if ($nr&amp;lt;100) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
#  if ($nr&amp;lt;1000) set nr = &amp;quot;0&amp;quot;$nr&amp;quot;&amp;quot;&lt;br /&gt;
  echo &amp;quot;XY&amp;quot; &amp;gt;! stack&lt;br /&gt;
  echo &amp;quot;$i&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  echo &amp;quot;$5&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
  if ($6 != &amp;quot;&amp;quot;) then&lt;br /&gt;
    echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
    convert -size &amp;quot;$7&amp;quot; &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.&amp;quot;$6&amp;quot;&lt;br /&gt;
    \rm -f &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid&lt;br /&gt;
  else&lt;br /&gt;
    echo &amp;quot;2&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
    aio $1 &amp;quot;$2&amp;quot;_&amp;quot;$nr&amp;quot;.bid 14 &amp;lt; stack&lt;br /&gt;
  endif&lt;br /&gt;
  \rm -f stack&lt;br /&gt;
  @ i = $i + 1&lt;br /&gt;
end&lt;br /&gt;
goto end&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
usage:&lt;br /&gt;
#&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;Usage:&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;aim2bid aim_filename bid_prefix first_slice last_slice scal_factor [form size])&amp;quot;&lt;br /&gt;
echo &amp;quot;                                (values are one-based)              gif/tif/...&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
#&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
end:&lt;br /&gt;
exit&lt;br /&gt;
#------------------------------------------------------------------------------&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 3===&lt;br /&gt;
&lt;br /&gt;
An example where a sequence of commands are executed resulting in an e-mail to let the user&lt;br /&gt;
know that their job is finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
# &lt;br /&gt;
nohup faim -s $1; /bin/csh -cbf &amp;quot;Mail -s &#039;JOB $1 FINISHED&#039; boyd@kin &amp;lt; ~/adm/mailer/faimjob.txt&amp;quot; &amp;amp;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You would run this script called &amp;lt;code&amp;gt;faim.com&amp;lt;/code&amp;gt; as follows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ faim.com inputfile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sample 4===&lt;br /&gt;
&lt;br /&gt;
This example uses two files.  One called &amp;lt;code&amp;gt;wrap.com&amp;lt;/code&amp;gt; is the base program that is called in &lt;br /&gt;
a more general program called &amp;lt;code&amp;gt;wrap_all.com&amp;lt;/code&amp;gt; so that many different files can be processed&lt;br /&gt;
by the base script.&lt;br /&gt;
&lt;br /&gt;
*wrap.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;! stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
echo &amp;quot;0&amp;quot; &amp;gt;&amp;gt; stack&lt;br /&gt;
&lt;br /&gt;
/home/skb/works/fio/aim_io $1.aim $1_sub.aim minimal 15 &amp;lt; stack&lt;br /&gt;
&lt;br /&gt;
/rm -f stack&lt;br /&gt;
&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*wrap_all.com&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_fem_right&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_left&lt;br /&gt;
~/works/com/wrap calgary_dog_aclx_03-04_med_tib_right&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;DONE!&amp;quot;&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==temple.ucalgary.ca==&lt;br /&gt;
&lt;br /&gt;
===Configuration Details===&lt;br /&gt;
&lt;br /&gt;
I include in the attachments my checklist I use for a Solaris 10&lt;br /&gt;
installation, adjusted to show only items particular to yours&lt;br /&gt;
and not my entire decision tree. I added brief explanations&lt;br /&gt;
for some of the items that might seem arbitrary otherwise.&lt;br /&gt;
&lt;br /&gt;
Very similar decisions are made when installing any release&lt;br /&gt;
of Linux, Solaris, MS Windows or yet another operating&lt;br /&gt;
system - the details vary though.&lt;br /&gt;
&lt;br /&gt;
http://docs.sun.com/ has all (too many) the details.&lt;br /&gt;
&lt;br /&gt;
:*Operating System [[Media:01_OS.pdf| Download PDF]]&lt;br /&gt;
:*Configuration [[Media:02_Configuration.pdf|Download PDF]]&lt;br /&gt;
:*Mirror [[Media:03_Mirror.pdf|Download PDF]]&lt;br /&gt;
:*RAID5 [[Media:04_RAID5.pdf|Download PDF]]&lt;br /&gt;
:*Finishing Steps [[Media:05_Finishing_Steps.pdf|Download PDF]]&lt;br /&gt;
&lt;br /&gt;
===Install XEmacs===&lt;br /&gt;
However, I would not install both Emacs and XEmacs at the same&lt;br /&gt;
time. Nowadays, I highly recommend installing only one of them,&lt;br /&gt;
with my preference given to XEmacs. Of course, only when&lt;br /&gt;
there are no specialized Lisp packages that require Emacs.&lt;br /&gt;
&lt;br /&gt;
Then my installation would be like below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /cdrom/s10_software_companion/components/sparc/Packages&lt;br /&gt;
$ cat &amp;gt; /tmp/nointeraction&lt;br /&gt;
  mail=&lt;br /&gt;
  instance=unique&lt;br /&gt;
  partial=nocheck&lt;br /&gt;
  runlevel=nocheck&lt;br /&gt;
  idepend=nocheck&lt;br /&gt;
  rdepend=nocheck&lt;br /&gt;
  space=quit&lt;br /&gt;
  setuid=nocheck&lt;br /&gt;
  conflict=quit&lt;br /&gt;
  action=nocheck&lt;br /&gt;
  basedir=default&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWbdb SFWgcc34l SFWxmacs&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  21872 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWbdb&amp;gt; was successful.&lt;br /&gt;
  [ Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  69953 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWgcc34l&amp;gt; was successful.&lt;br /&gt;
  [Copyright and legal notices omitted for brevity. ]&lt;br /&gt;
  264202 blocks&lt;br /&gt;
&lt;br /&gt;
  Installation of &amp;lt;SFWxmacs&amp;gt; was successful.&lt;br /&gt;
&lt;br /&gt;
$ emacs () { /opt/sfw/bin/xemacs $* ; }&lt;br /&gt;
&lt;br /&gt;
$ pkgadd -a /tmp/nointeraction -d . -n SFWddd SFWgbin SFWgdb&lt;br /&gt;
  [ To complete installation of the other packages you require. ]&lt;br /&gt;
&lt;br /&gt;
$ pkginfo SFWbdb SFWddd SFWgbin SFWgcc34l SFWgdb SFWxmacs&lt;br /&gt;
  system      SFWbdb    berkeleyDB - Berkeley Database Library&lt;br /&gt;
  system      SFWddd    ddd - GNU Data Display Debugger&lt;br /&gt;
  system      SFWgbin   binutils - GNU binary utilities&lt;br /&gt;
  system      SFWgcc34l gcc-3.4.2 - GNU Compiler Collection Runtime Libraries&lt;br /&gt;
  system      SFWgdb    gdb - GNU source level debugger&lt;br /&gt;
  system      SFWxmacs  XEmacs - text editor&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kksnishi</name></author>
	</entry>
</feed>