Difference between revisions of "Liz Chak Assignment 1"

From CDOT Wiki
Jump to: navigation, search
Line 6: Line 6:
  
 
=Problems and Solutions=
 
=Problems and Solutions=
==<big><b>Problem: To build the installer makensis is required in your path</b></big>==
+
==<b>Problem: To build the installer makensis is required in your path</b>==
  
 
The very first problem I encountered after I started to build took me merely a couple minutes to solve thanks to my great old friend [http://www.google.com Google]. The command prompt spurted out this error message:
 
The very first problem I encountered after I started to build took me merely a couple minutes to solve thanks to my great old friend [http://www.google.com Google]. The command prompt spurted out this error message:
Line 17: Line 17:
  
  
==<big><b>Solution: To build the installer makensis is required in your path</b></big>==
+
==<b>Solution: To build the installer makensis is required in your path</b>==
  
 
I found my solution on a [http://forums.mozillazine.org/viewtopic.php?t=92495&start=1320&sid=ad7fac8c3bc80a7373a0bf8957a15971 forum]. Basically I just added "ac_add_options --disable-installer" to my .mozconfig file.
 
I found my solution on a [http://forums.mozillazine.org/viewtopic.php?t=92495&start=1320&sid=ad7fac8c3bc80a7373a0bf8957a15971 forum]. Basically I just added "ac_add_options --disable-installer" to my .mozconfig file.
 
   
 
   
  
==<big><b>Problem: "target `c' doesn't match the target pattern" error</b></big>==
+
==<b>Problem: "target `c' doesn't match the target pattern" error</b>==
  
 
The next problem I encountered was a little trickier. The error code was:
 
The next problem I encountered was a little trickier. The error code was:
Line 56: Line 56:
  
  
==<big><b>Solution to "target `c' doesn't match the target pattern" error</b></big>==
+
==<b>Solution to "target `c' doesn't match the target pattern" error</b>==
 
*Install Cywgin from [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#GNU_Tools_for_Microsoft_Windows_.28Cygwin.29 here]
 
*Install Cywgin from [http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#GNU_Tools_for_Microsoft_Windows_.28Cygwin.29 here]
 
*Download [http://cygwin.paracoda.com/release/make/make-3.80-1.tar.bz2 Make 3.80]
 
*Download [http://cygwin.paracoda.com/release/make/make-3.80-1.tar.bz2 Make 3.80]

Revision as of 04:39, 16 September 2006

Under construction!!

Build Prerequisites

Configuration

Problems and Solutions

Problem: To build the installer makensis is required in your path

The very first problem I encountered after I started to build took me merely a couple minutes to solve thanks to my great old friend Google. The command prompt spurted out this error message:

checking for makensis... no
configure: error: To build the installer makensis is required in your path. 
To build without the installer reconfigure using --disable-installer.


Solution: To build the installer makensis is required in your path

I found my solution on a forum. Basically I just added "ac_add_options --disable-installer" to my .mozconfig file.


Problem: "target `c' doesn't match the target pattern" error

The next problem I encountered was a little trickier. The error code was:

../coreconf/rules.mk:365: target `c' doesn't match the target pattern
../coreconf/rules.mk:406: target `c' doesn't match the target pattern
../coreconf/rules.mk:407: warning: overriding commands for target `c'
../coreconf/rules.mk:366: warning: ignoring old commands for target `c'
../coreconf/rules.mk:437: target `c' doesn't match the target pattern
../coreconf/rules.mk:438: warning: overriding commands for target `c'
../coreconf/rules.mk:407: warning: ignoring old commands for target `c'
../coreconf/rules.mk:445: target `c' doesn't match the target pattern
../coreconf/rules.mk:446: warning: overriding commands for target `c
../coreconf/rules.mk:438: warning: ignoring old commands for target `c'
../coreconf/rules.mk:449: target `c' doesn't match the target pattern
../coreconf/rules.mk:450: warning: overriding commands for target `c'
../coreconf/rules.mk:446: warning: ignoring old commands for target `c'
../coreconf/rules.mk:464: target `c' doesn't match the target pattern
../coreconf/rules.mk:465: warning: overriding commands for target `c'
../coreconf/rules.mk:450: warning: ignoring old commands for target `c'
../coreconf/rules.mk:468: target `c' doesn't match the target pattern
../coreconf/rules.mk:469: warning: overriding commands for target `c'
../coreconf/rules.mk:465: warning: ignoring old commands for target `c'
../coreconf/rules.mk:966: *** multiple target patterns.  Stop.

My typical solution to any problems is "consulting" my old friend Google. It seemed like quite a few people encountered the same problem. I found out from a forum that the problem was that I didn't have the right version of Make. I had Make 3.81 which should have been Make 3.80.

I pulled up the GNU Tools for Microsoft Windows (Cygwin) installation guide again, and realized that I have missed out the part where it mentioned make 3.80 (not 3.81!) -- dependency analyzer for software builds (Devel category) as one of the required packages. However, when I reinstalled Cygwin again, it didn't give me an option to choose Make 3.80!! (I think this is a serious issue and should be outlined in the Windows Build Documentation)

I tried various solutions (one of them being: hunted for an older version of Cygwin to install) but my build still failed. After several unsuccessful attempts, I consulted Andrei Hajdukewycz for a solution, and the miracle happened, Firefox was then successfully built!!


Solution to "target `c' doesn't match the target pattern" error

  • Install Cywgin from here
  • Download Make 3.80
  • Extract it and install it
  • As it is a binary package, you could just grab the Make executable file (make.exe) and drop it in Cywgin -> bin (this will overwrite the existing Make executable)
  • Double check if you have the right Make package by typing this command:
$ make -v
GNU Make 3.80

Voila!

I also learned from Andrei Hajdukewycz that you can dump the Make package in your Cygwin packages temp directory and the installer will let you install it. The mirrors don't seem to have properly set up setup.hint files to point to the old versions of the Make files.

Resources

Conclusion