<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.kram.nz/index.php?action=history&amp;feed=atom&amp;title=SE250%3Anmake</id>
	<title>SE250:nmake - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.kram.nz/index.php?action=history&amp;feed=atom&amp;title=SE250%3Anmake"/>
	<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE250:nmake&amp;action=history"/>
	<updated>2026-06-04T16:16:56Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.kram.nz/index.php?title=SE250:nmake&amp;diff=14854&amp;oldid=prev</id>
		<title>Mark at 23:32, 22 September 2017</title>
		<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE250:nmake&amp;diff=14854&amp;oldid=prev"/>
		<updated>2017-09-22T23:32:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-GB&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 23:32, 22 September 2017&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l5&quot;&gt;Line 5:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Here are some information and tutorials on the &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; tool.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Here are some information and tutorials on the &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; tool.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.eng.hawaii.edu/Tutor/Make/ Make - a tutorial by Ben Yoshino (ben&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;@&lt;/del&gt;wiliki.eng.hawaii.edu)]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://www.eng.hawaii.edu/Tutor/Make/ Make - a tutorial by Ben Yoshino (ben &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;AT &lt;/ins&gt;wiliki.eng.hawaii.edu)]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://mrbook.org/tutorials/make/ Makefile Tutorial by Hector Urtubia]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://mrbook.org/tutorials/make/ Makefile Tutorial by Hector Urtubia]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://en.wikipedia.org/wiki/Make_(software) Wikipedia information on Make]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://en.wikipedia.org/wiki/Make_(software) Wikipedia information on Make]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki-mw_:diff:1.41:old-9231:rev-14854:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Mark</name></author>
	</entry>
	<entry>
		<id>https://wiki.kram.nz/index.php?title=SE250:nmake&amp;diff=9231&amp;oldid=prev</id>
		<title>Mark: 22 revision(s)</title>
		<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE250:nmake&amp;diff=9231&amp;oldid=prev"/>
		<updated>2008-11-03T05:20:50Z</updated>

		<summary type="html">&lt;p&gt;22 revision(s)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Makefiles on Windows ==&lt;br /&gt;
&lt;br /&gt;
=== Makefiles in general ===&lt;br /&gt;
&lt;br /&gt;
Here are some information and tutorials on the &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; tool.&lt;br /&gt;
&lt;br /&gt;
* [http://www.eng.hawaii.edu/Tutor/Make/ Make - a tutorial by Ben Yoshino (ben@wiliki.eng.hawaii.edu)]&lt;br /&gt;
* [http://mrbook.org/tutorials/make/ Makefile Tutorial by Hector Urtubia]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Make_(software) Wikipedia information on Make]&lt;br /&gt;
&lt;br /&gt;
=== How to use NMAKE ===&lt;br /&gt;
&lt;br /&gt;
I finally figured out how to use Visual Studio makefiles and thought people might find this useful.&lt;br /&gt;
&lt;br /&gt;
* To invoke Windows Visual Studio command line make tool:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This assumes a file called &amp;#039;&amp;#039;&amp;#039;Makefile&amp;#039;&amp;#039;&amp;#039; already exists. If you&amp;#039;re using another file, use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake -f myMakefile&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Sample Makefile. To compile arraylist lab code:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;span style=&amp;quot;font-family: Verdana&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color: #00cc00&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;font-size: 10pt&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;/span&amp;gt;&lt;br /&gt;
        &amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;tr&amp;gt;&lt;br /&gt;
                &amp;lt;td style=&amp;quot;width: 618px&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;span style=&amp;quot;font-size: 10pt; color: #00cc00&amp;quot;&amp;gt;&lt;br /&gt;
        # NOTE: Lines starting with a hash (#) is a comment line.&amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;br /&amp;gt;&lt;br /&gt;
                    &amp;lt;/span&amp;gt;&lt;br /&gt;
        &amp;lt;strong&amp;gt;all:&amp;lt;/strong&amp;gt; main.exe&amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;strong&amp;gt;main.exe:&amp;lt;/strong&amp;gt; main.c arraylist.obj&amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; cl main.c arraylist.obj&amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;span style=&amp;quot;font-size: 10pt; color: #00cc00&amp;quot;&amp;gt;# Generate arraylist object file. The&lt;br /&gt;
            &amp;quot;/c&amp;quot; option is the equivalent of the &amp;quot;-c&amp;quot; option in GCC.&amp;lt;/span&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;strong&amp;gt;arraylist.obj:&amp;lt;/strong&amp;gt; arraylist.c arraylist.h&amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; cl /c arraylist.c&amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;lt;strong&amp;gt;clean:&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
        &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; del arraylist.obj main.obj main.exe&amp;lt;/td&amp;gt;&lt;br /&gt;
            &amp;lt;/tr&amp;gt;&lt;br /&gt;
        &amp;lt;/table&amp;gt;&lt;br /&gt;
    &amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== cl.exe options ===&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;/Fo&amp;lt;path&amp;gt;&amp;#039;&amp;#039;&amp;#039; : Output the .obj file to a specified location. Similar to the &amp;#039;&amp;#039;&amp;#039;-o&amp;#039;&amp;#039;&amp;#039; option in GCC.&lt;br /&gt;
** e.g. &amp;#039;&amp;#039;&amp;#039;cl main.c /Fo../main.obj&amp;#039;&amp;#039;&amp;#039; to output the object file into main.c&amp;#039;s parent folder.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;/Fe&amp;lt;path&amp;gt;&amp;#039;&amp;#039;&amp;#039; : Output the .exe file to a specified location. Used in the same way as above and similar to the &amp;#039;&amp;#039;&amp;#039;-o&amp;#039;&amp;#039;&amp;#039; option in GCC.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;/c&amp;#039;&amp;#039;&amp;#039; : Compile only, no linking. Similar to the &amp;#039;&amp;#039;&amp;#039;-c&amp;#039;&amp;#039;&amp;#039; option in GCC.&lt;br /&gt;
** e.g. &amp;#039;&amp;#039;&amp;#039;cl /c arraylist.c /Fo../arraylist.obj&amp;#039;&amp;#039;&amp;#039; to create an object file from the arraylist code and ouput it to the parent folder.&lt;br /&gt;
&lt;br /&gt;
Type &amp;#039;&amp;#039;&amp;#039;cl /help&amp;#039;&amp;#039;&amp;#039; in the Visual Studio Command Prompt for more information.&lt;br /&gt;
&lt;br /&gt;
=== nmake.exe options ===&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;-f&amp;#039;&amp;#039;&amp;#039; : Use when the filename of your makefile is not the default name &amp;quot;Makefile&amp;quot;.&lt;br /&gt;
** e.g. &amp;#039;&amp;#039;&amp;#039;nmake -f MyMakefile&amp;#039;&amp;#039;&amp;#039; to compile your project.&lt;br /&gt;
* To clean up the output files use:&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;nmake -f MyMakefile clean&amp;#039;&amp;#039;&amp;#039; or &amp;#039;&amp;#039;&amp;#039;nmake clean&amp;#039;&amp;#039;&amp;#039; if your makefile is the default filename.&lt;br /&gt;
&lt;br /&gt;
Type &amp;#039;&amp;#039;&amp;#039;nmake /help&amp;#039;&amp;#039;&amp;#039; in the Visual Studio Command Prompt for more information.&lt;br /&gt;
&lt;br /&gt;
=== Reference ===&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;nmake&amp;#039;&amp;#039;&amp;#039; is the Visual Studio command line equivalent of &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;cl&amp;#039;&amp;#039;&amp;#039; is the Visual Studio command line equivalent of &amp;#039;&amp;#039;&amp;#039;gcc&amp;#039;&amp;#039;&amp;#039;.&lt;/div&gt;</summary>
		<author><name>Mark</name></author>
	</entry>
</feed>