How to build Firefox with Visual Studio 2005 Express Edition

Discussion of third-party/unofficial Firefox/Thunderbird/SeaMonkey builds.
Post Reply
Dougieha
Posts: 203
Joined: April 25th, 2003, 4:20 pm

Post by Dougieha »

Hmmm...probably not. I downloaded MASM32 to get ml.exe, since I don't have access to the WinDDK. I wonder if that's going to be a problem.
mmoy
Posts: 5030
Joined: February 17th, 2004, 9:05 pm
Location: New Hampshire
Contact:

Post by mmoy »

It shouldn't be unless they changed the switches to ml.exe but I think that unlikely. Or maybe I hope it's unlikely.
Dell E521 X2 5600+ MacBookPro 17'' 2.5 Ghz Penryn Dell M1330 2.0 Ghz Merom 4 GB Vista x64 Compaq r3000z AMD 64 3200+ (Win 32/64) PowerMac G5 1.8 Ghz MMOY-1.5 (OSX 10) Inspiron 8500, 4100, 4000, Dimension 2300 MacBook Pro 2.2 Ghz HP E6600 HP X2 4400+
User avatar
auenf
Posts: 709
Joined: August 28th, 2004, 2:25 am
Contact:

Post by auenf »

im using the ml.exe from the processor pack

@taiyo2
win98se might be different, i know it doesnt support winSxS, so that might be why yours is picking up the dll correctly

Enf...
User avatar
auenf
Posts: 709
Joined: August 28th, 2004, 2:25 am
Contact:

Post by auenf »

aliumalik wrote:one question:
Why are we using the old versions of these libraries...afaik glib is @ 2.8.3 and libidl @ 0.8.7?

New to the building scene, so instead of experimenting I thought I'd ask


http://lxr.mozilla.org/mozilla1.8/sourc ... idl/README

always obey the source fairies ;)

Enf...
User avatar
auenf
Posts: 709
Joined: August 28th, 2004, 2:25 am
Contact:

Post by auenf »

auenf wrote:http://lxr.mozilla.org/mozilla1.8/source/config/config.mk#526

my guess is we need to add something there ;)



xpidl seems to be a SDK_BINARY, so i guess we need to change something in either of these two places ;)

http://lxr.mozilla.org/mozilla1.8/sourc ... file.in#31

http://lxr.mozilla.org/mozilla1.8/sourc ... es.mk#1536

xpt_link (and xpt_dump) are SIMPLE_PROGRAMS (and they seem to be SDK_BINARY also)

http://lxr.mozilla.org/mozilla1.8/sourc ... file.in#48

http://lxr.mozilla.org/mozilla1.8/sourc ... les.mk#717

as to what exactly to change, i dont know exactly, and no guarantees im even on the right track ;)

Enf...
mmoy
Posts: 5030
Joined: February 17th, 2004, 9:05 pm
Location: New Hampshire
Contact:

Post by mmoy »

The build finished but I can't run the image. I'm guessing that I have the wrong msvc*80.dlls. Something to look at tomorrow. If I can get through the Linux installation.
Dell E521 X2 5600+ MacBookPro 17'' 2.5 Ghz Penryn Dell M1330 2.0 Ghz Merom 4 GB Vista x64 Compaq r3000z AMD 64 3200+ (Win 32/64) PowerMac G5 1.8 Ghz MMOY-1.5 (OSX 10) Inspiron 8500, 4100, 4000, Dimension 2300 MacBook Pro 2.2 Ghz HP E6600 HP X2 4400+
Dougieha
Posts: 203
Joined: April 25th, 2003, 4:20 pm

Post by Dougieha »

auenf wrote:
auenf wrote:http://lxr.mozilla.org/mozilla1.8/source/config/config.mk#526

my guess is we need to add something there ;)



xpidl seems to be a SDK_BINARY, so i guess we need to change something in either of these two places ;)

http://lxr.mozilla.org/mozilla1.8/sourc ... file.in#31

http://lxr.mozilla.org/mozilla1.8/sourc ... es.mk#1536

xpt_link (and xpt_dump) are SIMPLE_PROGRAMS (and they seem to be SDK_BINARY also)

http://lxr.mozilla.org/mozilla1.8/sourc ... file.in#48

http://lxr.mozilla.org/mozilla1.8/sourc ... les.mk#717

as to what exactly to change, i dont know exactly, and no guarantees im even on the right track ;)

Enf...


See here: https://bugzilla.mozilla.org/attachment.cgi?id=199692
User avatar
auenf
Posts: 709
Joined: August 28th, 2004, 2:25 am
Contact:

Post by auenf »

ok, i *think* i have worked out my redist problem...

i recreated the Microsoft.VC80.CRT redist folder inside firefox, and dropped the 4 files in (as per the redist.txt in the msvc8 folder), and was still getting errors. in the firefox.exe.manifest and updater.exe.manifest the version number is 8.0.50608.0 but the real version of the CRT dlls is 8.0.50727.42 and after changing that version in the two manifest files, firefox is now working on my box that doesnt have .net 2.0 installed.

Enf...

[edit]
the version in the Microsoft.VC80.CRT.manifest is 50727.42 also, wonder if this 50608.0 version is an express only version?

anyway, going to do some build tests in a little, most probably going to upload them all (with a build log).

one thing im not sure about is win9x and win2k doesnt support WinSxS and .manifest files, so since the msvcr80.dll is in the Microsoft.VC80.CRT folder instead of the folder with firefox.exe, win9x and win2k wont run firefox unless the dll is in their path already?

Enf...
[/edit]
User avatar
Sephirot
Posts: 247
Joined: June 15th, 2004, 7:56 am

Post by Sephirot »

mmoy wrote:
Sephirot wrote:
mmoy wrote:Just ran into the xpidl problem on a VS2005 build attempt. I think that I've seen this before.

copy the xpidl.manifest file from xpcom\typelib\xpidl to dist\bin and restart the build process

my build works now :D
firefox.exe needs its manifest file, too.

but compressing the files (exe and dll) with upx does not work anymore :-/


Could you tell me how to build the tools or email them to movdqa@gmail.com or mmoy@yahoo.com?

I'm pulling the branch right now and may give it a try if I can get directions for building the tools. I suspect that my problem with the Beta tools is that the security mechanism changed between the Beta and the Release.

I do not have much time right now, so I'll post only the links to VC8 moztools I used.

[edit]
http://www.sephiroth-j.de/mozilla/moztools.vc8/
[/edit]


Is there a way to get rid of the manifest files?
Last edited by Sephirot on November 10th, 2005, 9:46 am, edited 2 times in total.
Author of Bookmarks Menu Button, Autoclose Bookmark&History Folders and more

Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.19pre) Gecko/20110701 Firefox/3.6.19pre <-- build with MS VC++ 2010 SP1 and PGO on Win 7 x64
User avatar
auenf
Posts: 709
Joined: August 28th, 2004, 2:25 am
Contact:

Post by auenf »

ok, i just uploaded a trunk and branch build with the new manifest and dll config that *should* work on xp/2003 without having .net framework 2.0 installed, however i *think* win9x/win2k wont work with it out of the box unless the msvcrt80.dll is somewhere in the path (altho i have no way of confirming that).

ohh, and building a cairo based trunk build failed ;)

Enf...
mmoy
Posts: 5030
Joined: February 17th, 2004, 9:05 pm
Location: New Hampshire
Contact:

Post by mmoy »

Sephirot wrote:I do not have much time right now, so I'll post only the links to VC8 moztools I used.

http://www.sephiroth-j.de/www/mozilla/v ... 10-bin.rar
http://www.sephiroth-j.de/www/mozilla/v ... .8-bin.rar
http://www.sephiroth-j.de/www/mozilla/v ... ds-bin.rar

Is there a way to get rid of the manifest files?


Thanks for posting the tools but I was able to build them and I posted them on my site. My build finished but Firefox doesn't come up when I try to run it. I'll have to look at the additional manifest stuff later on. It looks like this stuff with VS 8 is going to create a few headaches for not only Mozilla products but customers in general that are migrating to VC 8.

This has been one of the best collaborative projects that I've seen in a while and while it's been chaotic, seeing so many interested in working out the problems is nice. Most of the time, you bang away on your own or with the help of one or two others until you get it or you give up. I've been in both categories many, many times.
Dell E521 X2 5600+ MacBookPro 17'' 2.5 Ghz Penryn Dell M1330 2.0 Ghz Merom 4 GB Vista x64 Compaq r3000z AMD 64 3200+ (Win 32/64) PowerMac G5 1.8 Ghz MMOY-1.5 (OSX 10) Inspiron 8500, 4100, 4000, Dimension 2300 MacBook Pro 2.2 Ghz HP E6600 HP X2 4400+
User avatar
Sephirot
Posts: 247
Joined: June 15th, 2004, 7:56 am

Post by Sephirot »

auenf wrote:ok, i *think* i have worked out my redist problem...

i recreated the Microsoft.VC80.CRT redist folder inside firefox, and dropped the 4 files in (as per the redist.txt in the msvc8 folder), and was still getting errors. in the firefox.exe.manifest and updater.exe.manifest the version number is 8.0.50608.0 but the real version of the CRT dlls is 8.0.50727.42 and after changing that version in the two manifest files, firefox is now working on my box that doesnt have .net 2.0 installed.

Enf...

[edit]
the version in the Microsoft.VC80.CRT.manifest is 50727.42 also, wonder if this 50608.0 version is an express only version?

anyway, going to do some build tests in a little, most probably going to upload them all (with a build log).

one thing im not sure about is win9x and win2k doesnt support WinSxS and .manifest files, so since the msvcr80.dll is in the Microsoft.VC80.CRT folder instead of the folder with firefox.exe, win9x and win2k wont run firefox unless the dll is in their path already?

Enf...
[/edit]

hey thanks, that works :D

The version of the linker is 50727.42 and not 50608.0, which is used in the manifest files - that's really strange.
Author of Bookmarks Menu Button, Autoclose Bookmark&History Folders and more

Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.19pre) Gecko/20110701 Firefox/3.6.19pre <-- build with MS VC++ 2010 SP1 and PGO on Win 7 x64
Dougieha
Posts: 203
Joined: April 25th, 2003, 4:20 pm

Post by Dougieha »

Yeah...I was wondering about that version mismatch yesterday as I was trying to find the appropriate msvc8 libraries to use. All of the compiler tools seem to be the newer version, yet I can't find any msvc8 libraries that are 50727.42. Very odd...if anyone figures this out, let us know!
mmoy
Posts: 5030
Joined: February 17th, 2004, 9:05 pm
Location: New Hampshire
Contact:

Post by mmoy »

So you need to modify the firefox.exe.manifest file and then build?
Dell E521 X2 5600+ MacBookPro 17'' 2.5 Ghz Penryn Dell M1330 2.0 Ghz Merom 4 GB Vista x64 Compaq r3000z AMD 64 3200+ (Win 32/64) PowerMac G5 1.8 Ghz MMOY-1.5 (OSX 10) Inspiron 8500, 4100, 4000, Dimension 2300 MacBook Pro 2.2 Ghz HP E6600 HP X2 4400+
User avatar
Sephirot
Posts: 247
Joined: June 15th, 2004, 7:56 am

Post by Sephirot »

mmoy wrote:So you need to modify the firefox.exe.manifest file and then build?
You can do this after the build is complete. The version in the manifest file for updater.exe must be changed, too.
Author of Bookmarks Menu Button, Autoclose Bookmark&History Folders and more

Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.19pre) Gecko/20110701 Firefox/3.6.19pre <-- build with MS VC++ 2010 SP1 and PGO on Win 7 x64
Post Reply