Archive

Archive for August, 2009

Firefox – Found time to Try again!

August 29th, 2009 Frank No comments

My attempts to build Firefox on windows continue today. If you recall , previously, I’ve had great success with Mac OS X which I tried by chance but I’ve had problems while attempting the same thing on Windows.

This experience has made me decided that my troubles with building open source program in the past has stemmed from my usage of non-unix based operating systems — Windows — and my lack of understand about make, autoconf, python and perl.

Ok, lets go….

I’ve updated to the latest tip of Mozilla Central and at this very moment, I’m at revision 80f4cdc242b9. I expect to be working with this revision throughout the remainder of this post. Though, in general the exact revision shouldn’t matter if you are attempting the same thing.

I’ve just tried to build with the command make -f client.mk

I’ve received an error and while writing this I just thought of why. It’s stupid reason but one is bound to make mistakes like this. Simply put, I forgot the very required mozconfig file. I cloned my “clean” repository to a new directory to start over and I forgot this file. For records (and search engines) the exact error I received was “configure: error: –enable-application=APP was not specified and is required.”

So, now lets actually follow the directions since we are not experts.

I’ve reread the MDC about building Firefox and I’ve created a .mozconfig files. I’ll put it below for my and your reference. Don’t assume you should use this — check out the Mozilla docs. They are very straight forward.

# My first mozilla config - https://developer.mozilla.org/en/Configuring_Build_Options

mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@

ac_add_options --enable-application=browser
mk_add_options MOZ_CO_PROJECT=browser

# Use the follow two for debugging (if desired)
# ac_add_options --enable-debug    
# ac_add_options --enable-tests

The # is the comment indicator and as you can see, I’ve setup but not enabled my options for debugging. I hope to use these later but for now I’ve decided to disable them.

Given the above .mozconfig file, I’ve attempted to rebuild and run in to an apparent known issue with building on Vista. Mozilla has done a beautiful job document the reason and how to fix it.The exact error is: “configure: error: System header oleacc.idl is not available” but right afterward the URL is given.

To correct this problem, Mozilla has listed three options. I’ve elected to attempt the “Use Windows 2008 SDK” option. I wasn’t sure which to pick but I decided that the 2008 SDK seems to be supported as the site states “Unfortunately, the Vista or Windows 2008 SDKs are required to build Mozilla”. I wish the page made a recommendation or gave pros and cons but perhaps it doesn’t matter…

The next error

After getting the Windows 2008 SDK installed and up to date, I received another error. This time the error read “nsinstall: Bad file number”. I’m not sure where to go from here, so I posted at the usenet.

The prevalent solution was to run as administrator, according to these two articles:

This hasn’t worked for me; I’m still trying to figure this out. Apparently, my success is not going to come today so I’m setting this aside for the time being.

In the hopes of continuing soon, I’ve posted two questions:

FireFox – Getting Source Code from Mercurial and 1st build

August 17th, 2009 Frank No comments

This is a follow up post to FireFox — Getting Started. Consider this more of a status post to show my progress in the previously linked post.

I’ve orientated myself on Mercurial a bit but I still have a lot to learn. I must state now that it is completely different from Subversion (SVN) and CVS. If you are new to systems like Mercurial — otherwise known as Distributed Source Control Management systems, I suggest you study up on them. The Mozilla team has put together a great starting out reference which is here and the Mercurial team has put together a great book here.

You can get information on getting the latest tip of “mozilla-central” from the following web page:

https://developer.mozilla.org/En/Developer_Guide/Source_Code/Mercurial

One tip I do want to leave here for others is that you should clone the mozilla-central repository twice. Once from the http site and once from the new local copy.

The first one, which I call clean, is a exact clone of the mozilla-central from Mozilla. I then clone this local repository and work in this new clone. I call this local clone working. With this setup, if you massively screw up your working directory, you can always re-clone your clean copy. I believe I read this in the Mercurial book.

My First Build

This series of blogs posts is actually suppose to be focused on the construction and (in some ways) development of FireFox. But, for me the first step to understanding a given project is to be able to compile or build it and run it. If you can’t build or run it, you can see what your hacking is doing to the results.

I’ve been able to successfully build the source code, however not on Windows as I had hoped. At least not yet. I’ve successfully built it on my Mac OS X machine.

Anyway, I continue with my quest to build on Windows as I suspect most of my research will be on my Windows Vista machine.

I’m not going to include how to build Firefox here. The Mozilla team has done a wonderful job documenting how to build on each environment and furthermore, they have set everything up to be newbie friendly.

My only advice at this point, is to go from top to bottom — don’t skip steps and install everything that they ask. Quite simply, if you skip around without knowing what you are skipping, your build won’t build and the error messages can’t tell you what you are missing. You end up reviewing the directions from top to bottom again.

Again, here are the Simple FireFox build instructions from Mozilla.

Categories: Random Tags: , ,

Printers – Why I don’t like them

August 14th, 2009 Frank No comments

Printers and me never get along; I’ve never known why but this video explains it all:

Printer is a Brat (YouTube)

http://www.youtube.com/watch?v=pQGtucrJ8hM

Categories: Random Tags: