<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Comments on Building Mozilla with the Free MS VC++</title>
	<atom:link href="http://whereswalden.com/mozilla/msvcfree/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://whereswalden.com</link>
	<description>Explaining things that don't make sense (and often those that do)</description>
	<pubDate>Wed, 20 Aug 2008 17:26:27 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: J. Shin</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2204</link>
		<dc:creator>J. Shin</dc:creator>
		<pubDate>Sun, 26 Feb 2006 05:38:43 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2204</guid>
		<description>I spent about half a day to set up build environments for both 1.8.1 branch and 1.9 trunk on my Win 2k box. The former needs either VC6 or VC7.x while the latter needs VC 7.x or VC8. Because VC6 only works with Feb 2003 edition of PSDK which cannot be installed side by side with the latest PSDK apparently required by VC8 express. I decided to use VC 7 toolkit 2003 for 1.8 branch and VC8 express for trunk. VC8 express part was easy, but VC7 toolkit part was harder. Anyway, thanks to this and other pages, I was able to build both 1.8 and trunk. It might have been easier if I had installed MASM, but I didn't and had to track down a couple of files, cvtres.exe and lib.exe.  I found both cvtres.exe and lib.exe in \Program Files\Microsoft Platform SDK\Bin\win64\x86\AMD (it could be just %PSDKROOT%\Bin\win64, but in my case, it's in x86/AMD). I confirmed that this lib.exe for 64bit works fine when used to build a 32bit library. It's also reported that the same is true of cvtres.exe. (for instance, see [http://tinyurl.com/ftqfb here]). However, I picked it up from \WINNT\Microsoft.NET\Framework\v1.1.4322 (.Net Runtime)</description>
		<content:encoded><![CDATA[<p>I spent about half a day to set up build environments for both 1.8.1 branch and 1.9 trunk on my Win 2k box. The former needs either VC6 or VC7.x while the latter needs VC 7.x or VC8. Because VC6 only works with Feb 2003 edition of PSDK which cannot be installed side by side with the latest PSDK apparently required by VC8 express. I decided to use VC 7 toolkit 2003 for 1.8 branch and VC8 express for trunk. VC8 express part was easy, but VC7 toolkit part was harder. Anyway, thanks to this and other pages, I was able to build both 1.8 and trunk. It might have been easier if I had installed MASM, but I didn&#8217;t and had to track down a couple of files, cvtres.exe and lib.exe.  I found both cvtres.exe and lib.exe in \Program Files\Microsoft Platform SDK\Bin\win64\x86\AMD (it could be just %PSDKROOT%\Bin\win64, but in my case, it&#8217;s in x86/AMD). I confirmed that this lib.exe for 64bit works fine when used to build a 32bit library. It&#8217;s also reported that the same is true of cvtres.exe. (for instance, see [http://tinyurl.com/ftqfb here]). However, I picked it up from \WINNT\Microsoft.NET\Framework\v1.1.4322 (.Net Runtime)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Napolitano</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2203</link>
		<dc:creator>James Napolitano</dc:creator>
		<pubDate>Thu, 16 Feb 2006 22:10:42 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2203</guid>
		<description>Just to let you know, very recently work has been done to make MSVC v8 (2005) the default Windows compiler on the trunk, and Vlad has significantly updated the MDC Windows build instructions; see http://blog.vlad1.com/archives/2006/02/13/93/.  Since the MS Visual C 8 Express Edition is free, I'm going to switch to using that instead of the VC2003 toolkit.</description>
		<content:encoded><![CDATA[<p>Just to let you know, very recently work has been done to make MSVC v8 (2005) the default Windows compiler on the trunk, and Vlad has significantly updated the MDC Windows build instructions; see <a href="http://blog.vlad1.com/archives/2006/02/13/93/" rel="nofollow">http://blog.vlad1.com/archives/2006/02/13/93/</a>.  Since the MS Visual C 8 Express Edition is free, I&#8217;m going to switch to using that instead of the VC2003 toolkit.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeff</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2196</link>
		<dc:creator>Jeff</dc:creator>
		<pubDate>Tue, 10 Jan 2006 15:04:34 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2196</guid>
		<description>Update on the status of tweaking the instructions again so they work correctly without fiddling:

Regarding an instructions update to make everything work on a vanilla box, it didn't happen over Christmastime; it will happen sometime in the next month.</description>
		<content:encoded><![CDATA[<p>Update on the status of tweaking the instructions again so they work correctly without fiddling:</p>
<p>Regarding an instructions update to make everything work on a vanilla box, it didn&#8217;t happen over Christmastime; it will happen sometime in the next month.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Philip</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2193</link>
		<dc:creator>Philip</dc:creator>
		<pubDate>Sun, 08 Jan 2006 17:10:57 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2193</guid>
		<description>First of all: great guide! I used it to get started about six months ago, and there've been very few problems since then. However, because of several recent changes, there are a few things that could be updated. I'll list them here.


As per the fix for &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=241528" rel="nofollow"&gt;bug 241528&lt;/a&gt;, you actually can build the IE profile migrator now.
In your build script, cygwin\bin &lt;em&gt;must&lt;/em&gt; precede WINDOWS\system32 because cygwin's find.exe has to override the one in system32. Otherwise, the build won't package properly and, because of a recent checkin, actually break when it tries to package extensions like inspector and reporter.
I've honestly never had problems with an objdir build (under the "Cons" section, you noted that such a thing might cause trouble), but if you want to keep the warning I guess that's fine...

[Ooh, thanks for letting me know about the second one!  I last did a compile several weeks ago and just tried yesterday to get an error which is probably a result of that, so you've saved me some effort on resolving that (assuming it works; I haven't restarted the build to see).  The way I currently have the path set up in what I'm using on my machine (which might not match what's here exactly because I haven't had a chance to test everything here recently) means that doing this could cause cygwin's perl to override the ActiveState perl, so I still will need to resolve that before I re-publish the instructions.  As for the third, it was reputedly fixed quite a while back, and as I only rarely update these instructions (almost always when I can personally test that it all works) it's hung around a while.  The first I may or may not have mentioned in a recent comment; look back and see ;-).]</description>
		<content:encoded><![CDATA[<p>First of all: great guide! I used it to get started about six months ago, and there&#8217;ve been very few problems since then. However, because of several recent changes, there are a few things that could be updated. I&#8217;ll list them here.</p>
<p>As per the fix for <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=241528" rel="nofollow">bug 241528</a>, you actually can build the IE profile migrator now.<br />
In your build script, cygwin\bin <em>must</em> precede WINDOWS\system32 because cygwin&#8217;s find.exe has to override the one in system32. Otherwise, the build won&#8217;t package properly and, because of a recent checkin, actually break when it tries to package extensions like inspector and reporter.<br />
I&#8217;ve honestly never had problems with an objdir build (under the &#8220;Cons&#8221; section, you noted that such a thing might cause trouble), but if you want to keep the warning I guess that&#8217;s fine&#8230;</p>
<p>[Ooh, thanks for letting me know about the second one!  I last did a compile several weeks ago and just tried yesterday to get an error which is probably a result of that, so you've saved me some effort on resolving that (assuming it works; I haven't restarted the build to see).  The way I currently have the path set up in what I'm using on my machine (which might not match what's here exactly because I haven't had a chance to test everything here recently) means that doing this could cause cygwin's perl to override the ActiveState perl, so I still will need to resolve that before I re-publish the instructions.  As for the third, it was reputedly fixed quite a while back, and as I only rarely update these instructions (almost always when I can personally test that it all works) it's hung around a while.  The first I may or may not have mentioned in a recent comment; look back and see ;-).]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcus Engene</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2184</link>
		<dc:creator>Marcus Engene</dc:creator>
		<pubDate>Mon, 19 Dec 2005 13:23:36 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2184</guid>
		<description>Hi

Response to
Comment by Robert Claypool â€” 15.08.05 @ 20:35
Comment by Victor Ronin â€” 29.08.05 @ 10:41

I too had the problem with the lib.exe returning error 5. 
I have VC6 installed (but use free compiler as in the example) and noticed that if I ran vcvars.bat and lib.exe manually (copy &#38; pasting arguments) it worked.
With the described setup it seems like masm32\bin\lib.exe is used. So I 
1 Renamed lib.exe in that directory (...masm32\bin\lib.exe -&#62; ...\masm32\bin\lib.exe.old)
2 Created a bat file ...masm32\bin\lib.bat containing
echo libscript
call "c:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT"
lib %*
3 Started a cygwin. cd to ...masm32\bin\
ln -s lib.bat lib

And rerun the make.

At least it compiled longer this time.

Best regards,
Marcus</description>
		<content:encoded><![CDATA[<p>Hi</p>
<p>Response to<br />
Comment by Robert Claypool â€” 15.08.05 @ 20:35<br />
Comment by Victor Ronin â€” 29.08.05 @ 10:41</p>
<p>I too had the problem with the lib.exe returning error 5.<br />
I have VC6 installed (but use free compiler as in the example) and noticed that if I ran vcvars.bat and lib.exe manually (copy &amp; pasting arguments) it worked.<br />
With the described setup it seems like masm32\bin\lib.exe is used. So I<br />
1 Renamed lib.exe in that directory (&#8230;masm32\bin\lib.exe -&gt; &#8230;\masm32\bin\lib.exe.old)<br />
2 Created a bat file &#8230;masm32\bin\lib.bat containing<br />
echo libscript<br />
call &#8220;c:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT&#8221;<br />
lib %*<br />
3 Started a cygwin. cd to &#8230;masm32\bin\<br />
ln -s lib.bat lib</p>
<p>And rerun the make.</p>
<p>At least it compiled longer this time.</p>
<p>Best regards,<br />
Marcus</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JAK-Software.org</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2180</link>
		<dc:creator>JAK-Software.org</dc:creator>
		<pubDate>Sun, 11 Dec 2005 19:35:46 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2180</guid>
		<description>Build Guide for SeaMonkey and Visual C++ 2005 Express:
http://jak-software.org/html/en/seamonkey/build/build2/</description>
		<content:encoded><![CDATA[<p>Build Guide for SeaMonkey and Visual C++ 2005 Express:<br />
<a href="http://jak-software.org/html/en/seamonkey/build/build2/" rel="nofollow">http://jak-software.org/html/en/seamonkey/build/build2/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Varun</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2176</link>
		<dc:creator>Varun</dc:creator>
		<pubDate>Sat, 26 Nov 2005 04:40:37 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2176</guid>
		<description>Hi There,

Gud start!. Just have a small request: -

AT THE BOTTOM OF THE BUILD INSTRUCTIONS AND THE MAIN UPDATES AFTER THAT, PLEASE PUT A SENTENCE THAT READS LIKE "TESTED TO BE WORKING FINE AS OF " AND "LAST UPDATED ON ".

This shall actually help people like me who visit your site regularly and have to reset their build environment frequently because of windows reinstallations etc...

(sorry for the caps. just wanted to be noticed.)

Keep up the good work.

[I notice everything that's posted because I get emails on moderated and posted comments; the problem is that I don't have a lot of time, and responses to comments are low on the list of priorities.  I added Last Updated note to the top of the doc, although it's not going to be very helpful yet.  Look for a real update around Christmas or so.]</description>
		<content:encoded><![CDATA[<p>Hi There,</p>
<p>Gud start!. Just have a small request: -</p>
<p>AT THE BOTTOM OF THE BUILD INSTRUCTIONS AND THE MAIN UPDATES AFTER THAT, PLEASE PUT A SENTENCE THAT READS LIKE &#8220;TESTED TO BE WORKING FINE AS OF &#8221; AND &#8220;LAST UPDATED ON &#8220;.</p>
<p>This shall actually help people like me who visit your site regularly and have to reset their build environment frequently because of windows reinstallations etc&#8230;</p>
<p>(sorry for the caps. just wanted to be noticed.)</p>
<p>Keep up the good work.</p>
<p>[I notice everything that's posted because I get emails on moderated and posted comments; the problem is that I don't have a lot of time, and responses to comments are low on the list of priorities.  I added Last Updated note to the top of the doc, although it's not going to be very helpful yet.  Look for a real update around Christmas or so.]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Amarok</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2175</link>
		<dc:creator>Amarok</dc:creator>
		<pubDate>Fri, 25 Nov 2005 10:55:43 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2175</guid>
		<description>Your patch does not work anymore. How about providing a download link for the sources this tutorial works with? CVS seems to be a source of trouble here.

[The instructions are intended to work with the "latest" code, so I can't provide a link to source downloads.  The patch should be readable in a text editor; try manually applying it if you really need to do so.  Keep in mind, tho, that the import/export patch is no longer needed, at least on trunk (I haven't tried compiling branch code with my setup), so try without the patch first.]</description>
		<content:encoded><![CDATA[<p>Your patch does not work anymore. How about providing a download link for the sources this tutorial works with? CVS seems to be a source of trouble here.</p>
<p>[The instructions are intended to work with the "latest" code, so I can't provide a link to source downloads.  The patch should be readable in a text editor; try manually applying it if you really need to do so.  Keep in mind, tho, that the import/export patch is no longer needed, at least on trunk (I haven't tried compiling branch code with my setup), so try without the patch first.]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Amarok</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2172</link>
		<dc:creator>Amarok</dc:creator>
		<pubDate>Fri, 18 Nov 2005 13:13:21 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2172</guid>
		<description>To all those reporting this configure error:

D:\moz\mozilla&#62;make -f client.mk build
cd /cygdrive/d/moz/mozilla
/cygdrive/d/moz/mozilla/configure
loading cache ./config.cache
checking host system typeâ€¦ i686-pc-cygwin
checking target system typeâ€¦ i686-pc-cygwin
checking build system typeâ€¦ i686-pc-cygwin
checking for gccâ€¦ cl
checking whether the C compiler (cl ) worksâ€¦ no
configure: error: installation or configuration problem: C compiler cannot create executables.
*** Fix above errors and then restart with â€œmake -f client.mk buildâ€
make: *** [/cygdrive/d/moz/mozilla/Makefile] Error 1


I had this one too. It was caused by having run the wrong "link" - make sure your PATH variable contains the cygwin/bin *after* your MSVC directory!</description>
		<content:encoded><![CDATA[<p>To all those reporting this configure error:</p>
<p>D:\moz\mozilla&gt;make -f client.mk build<br />
cd /cygdrive/d/moz/mozilla<br />
/cygdrive/d/moz/mozilla/configure<br />
loading cache ./config.cache<br />
checking host system typeâ€¦ i686-pc-cygwin<br />
checking target system typeâ€¦ i686-pc-cygwin<br />
checking build system typeâ€¦ i686-pc-cygwin<br />
checking for gccâ€¦ cl<br />
checking whether the C compiler (cl ) worksâ€¦ no<br />
configure: error: installation or configuration problem: C compiler cannot create executables.<br />
*** Fix above errors and then restart with â€œmake -f client.mk buildâ€<br />
make: *** [/cygdrive/d/moz/mozilla/Makefile] Error 1</p>
<p>I had this one too. It was caused by having run the wrong &#8220;link&#8221; - make sure your PATH variable contains the cygwin/bin *after* your MSVC directory!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Napolitano</title>
		<link>http://whereswalden.com/mozilla/msvcfree/comments/#comment-2170</link>
		<dc:creator>James Napolitano</dc:creator>
		<pubDate>Wed, 09 Nov 2005 08:56:52 +0000</pubDate>
		<guid isPermaLink="false">http://whereswalden.com/mozilla/msvcfree/comments/#comment-2170</guid>
		<description>Hello Jeff,

  I currently just got a trunk (debug, dynamically-linked, shared) Firefox build to compile using the free MS Toolkit and your instructions above.  I'd love it if we could include some of these instructions in a page in the new DevMo build documentation.
  Here are some notes on what I had to do to get the build to complete.

1.) Alter the buildsetup.bat file, updating directories, changing the order of PATH, LIB, &#38; INCLUDE, and making it easier to use non-default directories.  Here is what my file looks like:


REM --- changes these to whatever the correct paths for your installation are ---

SET HOME=C:\cygwin\home\James
SET MOZ_TOOLS=C:\moz\moztools
SET GLIB_PREFIX=C:\moz\vc71
SET LIBIDL_PREFIX=C:\moz\vc71

SET PSDK=C:\Program Files\Microsoft Platform SDK
SET VCTK=C:\Program Files\Microsoft Visual C++ Toolkit 2003
SET VSDN=C:\Program Files\Microsoft Visual Studio .NET 2003
SET DNSDK=C:\Program Files\Microsoft.NET\SDK\v1.1
SET DNFW=C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
SET MASM=C:\Program Files\masm32 (I moved this after install from C:\masm32)
SET CYGWIN=C:\cygwin

REM --- set up environmental variables ---

SET PATH=%GLIB_PREFIX%;%GLIB_PREFIX%\bin;%VCTK%\bin;%PSDK%\Bin;%DNSDK%\Bin;%VSDN%\Common7\IDE;%PSDK%\Bin\Win64;%PSDK%\redist\win64;%DNFW%;%MASM%\BIN;%MOZ_TOOLS%\bin;%CYGWIN%\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\wbem

SET INCLUDE=%VCTK%\include;%PSDK%\include;%DNSDK%\include;%VSDN%\Vc7\include;%PSDK%\include\crt;%MASM%\INCLUDE;%PSDK%\include\atl;%PSDK%\include\mfc

SET LIB=%VCTK%\lib;%PSDK%\Lib;%DNSDK%\Lib;%VSDN%\Vc7\lib;%MASM%\LIB;%PSDK%\Lib\IA64;%PSDK%\Lib\IA64\mfc

2.) had to set NO_MFC=1 (as in Comment 4)

3.) When I got the error about not having the file atlthunk.lib, I tried to build it myself as suggested in Comment 10.  I installed the relevant PSDK sources and ran 'nmake /f atl.mak', but nmake just gave me the same error about atlthunk.lib not being found!  I did some web searching, and according to http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=64509, there is a different implementation of ATL (Active Template Library) in the PSDK than in Visual Studio, and the one in Visual Studio doesn't require atlthunk.lib, which apparently is not available to anyone outisde of Microsoft.  So IIUC, we have to either get the atl implementation in Visual Studio or comment out the "#pragma include atlthunk.lib" line of atlbase.h (as in Comment 4), which I did.

4.) Also, due to a just-fixed bug (https://bugzilla.mozilla.org/show_bug.cgi?id=241528), which you filled, the disable-ie-migrator patch is no longer needed.

5.) No trouble with midl, cygwin perl, or make 3.80.  No need to alter any makefiles (as in end of comment 4).  Fortunately, also no error messages about nspr4, "unresolved external symbol", or missing files (once I got my PATH, LIB, &#38; INCLUDE right).

6.) Comment 3 does seem to be right about the minium PSDK components that need to be downloaded and installed.

7.) After mybuild completed, I could run firefox.exe (in objdir\dist\bin), but with plenty of error messages in the backgroup and Firefox soon froze up.  I also created an installer, but it doesn't work.

[I recently - just for kicks - decided to try building trunk Firefox with the Windows setup I had from when things weren't working.  Oddly enough, it worked after only one hiccup!  Some combination of changes I'd made to the build setup combined with changes to the Mozilla source code itself made everything work correctly.  Unfortunately I don't have time quite yet to update the instructions to get a working build setup due to classes, so the update will have to wait until at least Christmas.

In response to the information you posted in #3, I also did some searching and came to the same conclusions.  It may be editing the platform SDK, but if the change can't possibly make anything else that might be built break, I have no compunctions about recommending it.

To anyone else interested in this, I think there's enough information in the article and the comments to successfully get a working build environment.  The information's fragmented and sometimes misleading, true, but there's enough to do it if you really, really want to do so.  I &lt;strong&gt;will&lt;/strong&gt; update this when I have time, but I don't right now, so feel free to comment and discuss things if you need help getting anything working.  When I update the page I also intend to split comments out into separate pages to make it easier to get the information without being distracted by large number of comments.

One last - sorry that I've been a bit slow about approving comments lately; real life has been a real time suck.  Anyone who's posted previously should be able to post without delays, tho, so hopefully that'll at least mitigate the problem.  I'll try to keep on top of the queue a bit better in the future.]</description>
		<content:encoded><![CDATA[<p>Hello Jeff,</p>
<p>  I currently just got a trunk (debug, dynamically-linked, shared) Firefox build to compile using the free MS Toolkit and your instructions above.  I&#8217;d love it if we could include some of these instructions in a page in the new DevMo build documentation.<br />
  Here are some notes on what I had to do to get the build to complete.</p>
<p>1.) Alter the buildsetup.bat file, updating directories, changing the order of PATH, LIB, &amp; INCLUDE, and making it easier to use non-default directories.  Here is what my file looks like:</p>
<p>REM &#8212; changes these to whatever the correct paths for your installation are &#8212;</p>
<p>SET HOME=C:\cygwin\home\James<br />
SET MOZ_TOOLS=C:\moz\moztools<br />
SET GLIB_PREFIX=C:\moz\vc71<br />
SET LIBIDL_PREFIX=C:\moz\vc71</p>
<p>SET PSDK=C:\Program Files\Microsoft Platform SDK<br />
SET VCTK=C:\Program Files\Microsoft Visual C++ Toolkit 2003<br />
SET VSDN=C:\Program Files\Microsoft Visual Studio .NET 2003<br />
SET DNSDK=C:\Program Files\Microsoft.NET\SDK\v1.1<br />
SET DNFW=C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322<br />
SET MASM=C:\Program Files\masm32 (I moved this after install from C:\masm32)<br />
SET CYGWIN=C:\cygwin</p>
<p>REM &#8212; set up environmental variables &#8212;</p>
<p>SET PATH=%GLIB_PREFIX%;%GLIB_PREFIX%\bin;%VCTK%\bin;%PSDK%\Bin;%DNSDK%\Bin;%VSDN%\Common7\IDE;%PSDK%\Bin\Win64;%PSDK%\redist\win64;%DNFW%;%MASM%\BIN;%MOZ_TOOLS%\bin;%CYGWIN%\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\wbem</p>
<p>SET INCLUDE=%VCTK%\include;%PSDK%\include;%DNSDK%\include;%VSDN%\Vc7\include;%PSDK%\include\crt;%MASM%\INCLUDE;%PSDK%\include\atl;%PSDK%\include\mfc</p>
<p>SET LIB=%VCTK%\lib;%PSDK%\Lib;%DNSDK%\Lib;%VSDN%\Vc7\lib;%MASM%\LIB;%PSDK%\Lib\IA64;%PSDK%\Lib\IA64\mfc</p>
<p>2.) had to set NO_MFC=1 (as in Comment 4)</p>
<p>3.) When I got the error about not having the file atlthunk.lib, I tried to build it myself as suggested in Comment 10.  I installed the relevant PSDK sources and ran &#8216;nmake /f atl.mak&#8217;, but nmake just gave me the same error about atlthunk.lib not being found!  I did some web searching, and according to <a href="http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=64509" rel="nofollow">http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=64509</a>, there is a different implementation of ATL (Active Template Library) in the PSDK than in Visual Studio, and the one in Visual Studio doesn&#8217;t require atlthunk.lib, which apparently is not available to anyone outisde of Microsoft.  So IIUC, we have to either get the atl implementation in Visual Studio or comment out the &#8220;#pragma include atlthunk.lib&#8221; line of atlbase.h (as in Comment 4), which I did.</p>
<p>4.) Also, due to a just-fixed bug (https://bugzilla.mozilla.org/show_bug.cgi?id=241528), which you filled, the disable-ie-migrator patch is no longer needed.</p>
<p>5.) No trouble with midl, cygwin perl, or make 3.80.  No need to alter any makefiles (as in end of comment 4).  Fortunately, also no error messages about nspr4, &#8220;unresolved external symbol&#8221;, or missing files (once I got my PATH, LIB, &amp; INCLUDE right).</p>
<p>6.) Comment 3 does seem to be right about the minium PSDK components that need to be downloaded and installed.</p>
<p>7.) After mybuild completed, I could run firefox.exe (in objdir\dist\bin), but with plenty of error messages in the backgroup and Firefox soon froze up.  I also created an installer, but it doesn&#8217;t work.</p>
<p>[I recently - just for kicks - decided to try building trunk Firefox with the Windows setup I had from when things weren't working.  Oddly enough, it worked after only one hiccup!  Some combination of changes I'd made to the build setup combined with changes to the Mozilla source code itself made everything work correctly.  Unfortunately I don't have time quite yet to update the instructions to get a working build setup due to classes, so the update will have to wait until at least Christmas.</p>
<p>In response to the information you posted in #3, I also did some searching and came to the same conclusions.  It may be editing the platform SDK, but if the change can't possibly make anything else that might be built break, I have no compunctions about recommending it.</p>
<p>To anyone else interested in this, I think there's enough information in the article and the comments to successfully get a working build environment.  The information's fragmented and sometimes misleading, true, but there's enough to do it if you really, really want to do so.  I <strong>will</strong> update this when I have time, but I don't right now, so feel free to comment and discuss things if you need help getting anything working.  When I update the page I also intend to split comments out into separate pages to make it easier to get the information without being distracted by large number of comments.</p>
<p>One last - sorry that I've been a bit slow about approving comments lately; real life has been a real time suck.  Anyone who's posted previously should be able to post without delays, tho, so hopefully that'll at least mitigate the problem.  I'll try to keep on top of the queue a bit better in the future.]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
