Difference between revisions of "User:Mdsouza/Assignment 01: Build the Fox"

From CDOT Wiki
Jump to: navigation, search
(Overview)
Line 1: Line 1:
 
=Overview=
 
=Overview=
  
The way I decided to proceed with this assignment was to read all the information out there about how the build process works before trying anything out. I did this to decrease my chances that I do not fall into a "try, fail, try again" scenario.
+
The way I decided to proceed with this assignment was to read all the information out there about how the build process works before trying anything out. I did this to decrease my chances that I do not fall into a "try, fail, try again" scenario. However, as it came to be, finding a bug is inevitable. :(
  
As you'll notice below I mentioned the tools one needs, steps I took, and problems that I tackled to get me through the processing of building firefox!
+
In this report below I mentioned the tools one needs, steps I took, and problems that I tackled to get me through the processing of building firefox 1.5.0.7 without using CVS!
  
 
=Computer Specs=
 
=Computer Specs=
Line 24: Line 24:
 
*[http://developer.mozilla.org/en/docs/Mozilla_Build_FAQ Mozilla Build FAQ]
 
*[http://developer.mozilla.org/en/docs/Mozilla_Build_FAQ Mozilla Build FAQ]
 
*[http://cs.nyu.edu/rgrimm/teaching/fa05-oop/windows-make.html Getting Make to place nice with Cygwin]
 
*[http://cs.nyu.edu/rgrimm/teaching/fa05-oop/windows-make.html Getting Make to place nice with Cygwin]
* [http://forums.mozillazine.org/viewforum.php?f=23 Firefox Build Forum @ MozillaZine]
+
*[http://forums.mozillazine.org/viewforum.php?f=23 Firefox Build Forum @ MozillaZine]
 +
*[http://cs1.senecac.on.ca/wiki/index.php/Assignment_1_List Other Student's Assignments]
  
 
==Downloaded And Installed The Tools==
 
==Downloaded And Installed The Tools==
Line 30: Line 31:
 
*Microsoft® Visual Studio .NET 2003® (C++ module is needed mainly). It's available from [http://acs.senecac.on.ca/pages/download.php ACS] -- [http://sonic.senecac.on.ca/download/getfile.php?username=sfernan2&filename=MSDN/2072.2.ISO Pre-requesite Disc)], [http://sonic.senecac.on.ca/download/getfile.php?username=sfernan2&filename=MSDN/2070.ISO Disc 1], [http://sonic.senecac.on.ca/download/getfile.php?username=sfernan2&filename=MSDN/2071.ISO Disc 2]
 
*Microsoft® Visual Studio .NET 2003® (C++ module is needed mainly). It's available from [http://acs.senecac.on.ca/pages/download.php ACS] -- [http://sonic.senecac.on.ca/download/getfile.php?username=sfernan2&filename=MSDN/2072.2.ISO Pre-requesite Disc)], [http://sonic.senecac.on.ca/download/getfile.php?username=sfernan2&filename=MSDN/2070.ISO Disc 1], [http://sonic.senecac.on.ca/download/getfile.php?username=sfernan2&filename=MSDN/2071.ISO Disc 2]
 
*[http://www.rarlabs.com WinRar] to extract several files
 
*[http://www.rarlabs.com WinRar] to extract several files
*[ftp://ftp.cygwin.com/pub/cygwin/setup.exe Cygwin] | [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#GNU_Tools_for_Microsoft_Windows_.28Cygwin.29 More Info] | [http://www.cygwin.com Cyqwin Main Website]
+
*[ftp://ftp.cygwin.com/pub/cygwin/setup.exe Cygwin] | [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#GNU_Tools_for_Microsoft_Windows_.28Cygwin.29 More Info] | [http://www.cygwin.com Cygwin Main Website]
 +
 
 +
When installing Cygwin the following packages need to be selected:
 +
 
 +
<pre>
 +
* ash -- UNIX-like command line interpreter shell (Base category)
 +
* coreutils -- GNU core utilities (includes fileutils, install, sh-utils, and textutils) (Base category)
 +
* cvs -- concurrent versions system (Devel category)
 +
* diffutils -- file comparison utility (Base category)
 +
* findutils (Base category)
 +
* gawk -- pattern matching language (Base and Interpretors categories)
 +
* grep -- text search tool (Base category)
 +
* libiconv -- character set conversion (Devel category)
 +
* make -- dependency analyzer for software builds (Devel category) (not mandatory if the version is 3.81)
 +
* patchutils -- a small collection of programs that operate on patch files (Devel category)
 +
* perl -- a scripting language used to control parts of the build (Interpreters category)
 +
* sed -- a search and replace language (Base category)
 +
* unzip -- zip file extraction (Archive category)
 +
* zip -- zip file creation (Archive category)
 +
</pre>
 +
 
 
*[http://cygwin.paracoda.com/release/make/make-3.80-1.tar.bz2 Make 3.80] (to overwrite the 3.81 version from the Cygwin install)
 
*[http://cygwin.paracoda.com/release/make/make-3.80-1.tar.bz2 Make 3.80] (to overwrite the 3.81 version from the Cygwin install)
*[http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/moztools-static.zip MozTools] | [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#moztools MozTools Info]
+
 
 +
Once MAKE is downloaded and saved on your hard drive:
 +
 
 +
<pre>
 +
1. Use WinRAR to extract the file to any folder of your choosing.
 +
2. Copy the make.exe file located within the usr/bin folder and overwrite the make.exe located in C:\cygwin\bin
 +
</pre>
 +
 
 +
*[http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/moztools-static.zip MozTools] | [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#moztools More Info]
 +
 
 +
Once downloaded, extrcat the contents to any location. Remember the location though as you will need to edit your batch file with this location.
 +
 
 
*[http://www.microsoft.com/downloads/details.aspx?FamilyID=0baf2b35-c656-4969-ace8-e4c0c0716adb&DisplayLang=en Microsoft ® Windows Server® 2003 R2 Platform SDK] | [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#Platform_SDK More Info]
 
*[http://www.microsoft.com/downloads/details.aspx?FamilyID=0baf2b35-c656-4969-ace8-e4c0c0716adb&DisplayLang=en Microsoft ® Windows Server® 2003 R2 Platform SDK] | [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#Platform_SDK More Info]
*[http://nsis.sourceforge.net/Download NSIS Installer] | [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#NSIS More Info]
 
  
 
==The Build Begins==
 
==The Build Begins==
Line 42: Line 73:
 
==Problems And Solutions==
 
==Problems And Solutions==
  
 +
===Problem 1===
 +
 +
 +
===Problem 2===
 +
 +
 +
===Problem 3===
 +
 +
 +
==Apendix==
 +
 +
 +
===Batch File===
 +
 +
 +
===.mozconfig File===
  
  

Revision as of 23:00, 18 September 2006

Overview

The way I decided to proceed with this assignment was to read all the information out there about how the build process works before trying anything out. I did this to decrease my chances that I do not fall into a "try, fail, try again" scenario. However, as it came to be, finding a bug is inevitable. :(

In this report below I mentioned the tools one needs, steps I took, and problems that I tackled to get me through the processing of building firefox 1.5.0.7 without using CVS!

Computer Specs

  • Intel Pentium IV 1.7 GHz
  • 1GB of RAM
  • 40GB Hard Drive
  • Windows XP Professional

Steps Took To Build the Fox

Did The Boring Stuff

Here are some of the sites I spent the most time reading:

Downloaded And Installed The Tools

When installing Cygwin the following packages need to be selected:

* ash -- UNIX-like command line interpreter shell (Base category) 
* coreutils -- GNU core utilities (includes fileutils, install, sh-utils, and textutils) (Base category) 
* cvs -- concurrent versions system (Devel category) 
* diffutils -- file comparison utility (Base category) 
* findutils (Base category) 
* gawk -- pattern matching language (Base and Interpretors categories) 
* grep -- text search tool (Base category) 
* libiconv -- character set conversion (Devel category) 
* make -- dependency analyzer for software builds (Devel category) (not mandatory if the version is 3.81)
* patchutils -- a small collection of programs that operate on patch files (Devel category) 
* perl -- a scripting language used to control parts of the build (Interpreters category) 
* sed -- a search and replace language (Base category) 
* unzip -- zip file extraction (Archive category) 
* zip -- zip file creation (Archive category)
  • Make 3.80 (to overwrite the 3.81 version from the Cygwin install)

Once MAKE is downloaded and saved on your hard drive:

1. Use WinRAR to extract the file to any folder of your choosing.
2. Copy the make.exe file located within the usr/bin folder and overwrite the make.exe located in C:\cygwin\bin 

Once downloaded, extrcat the contents to any location. Remember the location though as you will need to edit your batch file with this location.

The Build Begins

Problems And Solutions

Problem 1

Problem 2

Problem 3

Apendix

Batch File

.mozconfig File

Voila!

Conclusion