Open main menu

CDOT Wiki β

Cdpatel1

Joined 15 August 2008
Revision as of 16:09, 21 September 2008 by Cdpatel1 (talk | contribs) (Projects)

Personal Profile

Name: Chinmay Patel or Chintu or Chinu or Jimmy

Gender: Male

Course: BSD (Bachelor of Software Development)

Strengths: C, C++, Java, SQL

Weaknesses: I can't ask somebody for help. But, I think I have to learn that ... and eventually I will

Hobbies: RollerSkating and Pingpong and Badminton and Lots of other.

Contact: cdpatel1@senecac.on.ca, chinmay_patel@ymail.com

Programming Profile

Languages Known: C, C++, Java, SQL, Flash Actionscript

Blog : cdptel1.blogspot.com

Projects: I haven't completed any projects but school assignments.

Current Project: Currently I am working on project on Mozilla Thunderbird. It is all about making weave work on Thunderbird. The work has already been started and I just have to continue from the left over and wrap it up.


Projects

Software

Process Manager Extension

A binary XPCOM extension that allows processes external to Firefox to be started and stopped. Currently only Win32 is supported. It is used in the SHTTPD extension.

Further notes on usage: http://jamesboston.ca/cms/node/41

Download: http://jamesboston.ca/extensions/processmanager.xpi

Source: http://jamesboston.ca/extensions/processmanager.zip

SHTTPD Extension

This is a proof of concept. Installing this extension will start a tiny webserver that runs locally. The purpose of this is to eventually provide a way to distribute web application as extensions so they can be run locally/offline. At present, when the browser starts the server also starts and installs an icon to the system tray. It only runs on Win32 machines.

Download: http://jamesboston.ca/extensions/shttpd.xpi

(The server is licensed as beerware and is available on its own at http://shttpd.sourceforge.net/).

Open in Editor Extension

This extension will open source code files from http://mxr.mozilla.org in an editor on the users machine. Simply right click on the loaded page and select the Open in Editor option from the pop up context menu. The user may choose any editor through preference settings. If no preferences are selected the extension defaults to gedit on Linux, notepad on Windows, and (currently) nothing on OS X.

Download: http://zenit.senecac.on.ca/wiki/imgs/Openineditor.xpi

Ubiquity commands

Subscribe to all my commands

Search Seneca Library

Paste to pastebin

Building Firefox

Building on Windows Vista

Install Visual Studio: (The express version will work.)

http://msdn2.microsoft.com/en-us/vstudio/aa700736.aspx

Get Microsoft Windows Software Development Kit Update for Windows Vista:

http://www.microsoft.com/downloads/details.aspx?FamilyID=4377f86d-c913-4b5c-b87e-ef72e5b4e065&DisplayLang=en 

Download and install Mozilla Build, a package of software prereqs: (If you get a message saying this application did not install properly then you should see a windows dialog giving you the option to re-install with the 'correct settings'. After that all should be well.)

http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/MozillaBuildSetup-1.3.exe

Open a shell window by right clicking and using admin privileges: (The example here is for Visual Studio 2005. The name of the bat file you use should match the directory that Visual Studio is installed in.)

c:\mozilla-build\start-msvc8.bat

If you are attempting to build Firefox 3.1 you can checkout the source using mercurial as described below. When creating a working directory and checking out the source it doesn't really matter where you put it, but avoid paths that contain spaces. If your user name doesn't have space you can checkout the source to your home directory like this:

cd
mkdir mozilla
cd mozilla
hg clone http://hg.mozilla.org/mozilla-central/ src

If you are attempting to build Firefox 3.0 you can checkout the source using cvs as described below:

cd
cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co mozilla/client.mk
cd ~/mozilla
make -f client.mk checkout MOZ_CO_PROJECT=browser

Create and open a hidden file called .mozconfig in your home directory:

notepad.exe ~/.mozconfig

Add the following lines to .mozconfig

# My first mozilla config
. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@
ac_add_options --disable-optimize
ac_add_options --enable-debug
ac_add_options --disable-static --enable-shared

If you are using a multi-core computer for building, you can try adding a flag to speed up compile times. Use a value of ((# of cores)*2)+1 (ie. five for two cores):

mk_add_options MOZ_MAKE_FLAGS=-j5

Visual Studio 2008 users may also need to add one or more of the following to .mozconfig

ac_add_options --disable-xpconnect-idispatch
ac_add_options --disable-activex
ac_add_options --disable-activex-scripting
ac_add_options --disable-accessibility
ac_add_options --disable-parental-controls

Start the build:

cd ~/mozilla/src
make -f client.mk build

Once the build is finished you should set the following environment variable to turn-off assertion dialogs:

export XPCOM_DEBUG_BREAK=warn

When you run Firefox for the first time, create and select a new profile called "development" (or any name of your choice) to avoid corrupting your current profile. You can do this while running your current version of Firefox using these command line options:

~/mozilla/src/obj*/dist/bin/firefox -Profilemanager -no-remote

The finished build can be found in the ~/mozilla/src/obj*/dist/bin directory.

Run the file "mozilla" or "firefox", not the binary "mozilla-bin" or "firefox-bin".

For more detailed info about the windows build requirements visit Mozilla Developer Center.

For more detailed information about Mozilla building visit Real World Mozilla Build Lab.

For more info about Visual Studio 2008 problems see Lukas Blakk's blog.

For more information on using Mercurial to checkout Mozilla code see Mozilla Source Code.

Building on Windows XP

The instructions are the same as for Windows Vista. For Firefox 3, the Vista SDK is also required. However, try adding the following additional line to your .mozconfig file first:

ac_add_options --disable-vista-sdk-requirements

Another problem is that you may not be able to use your home directory because the path almost certainly has spaces. If that is the case, just put the mozilla directory in your root (ie. C:\mozilla) and put the .mozconfig file in that directory.

Building on Ubuntu and Fedora

Install build pre-requisites for Fedora users:

su -c "yum groupinstall 'Development Tools' 'Development Libraries' 'GNOME Software Development'"
su -c "yum install mercurial"

Install Firefox 3 build re-requisites for Ubuntu 8.04 users:

sudo apt-get install build-essential
sudo apt-get build-dep firefox-3.0
sudo apt-get install mercurial libasound2 libasound2-dev curl libcurl4-gnutls-dev

Checkout the source:

mkdir ~/mozilla
cd ~/mozilla
hg clone http://hg.mozilla.org/mozilla-central/ src

Create and open a hidden file called .mozconfig in your home directory:

gedit ~/.mozconfig

Add the following lines to .mozconfig

# My first mozilla config
. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@
ac_add_options --disable-optimize
ac_add_options --enable-debug
ac_add_options --disable-static --enable-shared

See the Windows Vista notes above about adding a flag to .mozconfig to speed up the compile.

Start the build:

cd ~/mozilla/src
make -f client.mk build

Here is a log of the output from building Firefox 3.1 on Ubuntu 8.04:

http://zenit.senecac.on.ca/wiki/imgs/Build_output.txt.zip

Once the build is finished you should set the following environment variable to turn-off assertion dialogs:

export XPCOM_DEBUG_BREAK=warn

When you run Firefox for the first time, create and select a new profile called "development" (or any name of your choice) to avoid corrupting your current profile. You can do this while running your current version of Firefox using these command line options:

~/mozilla/src/obj*/dist/bin/firefox -Profilemanager -no-remote

The finished build can be found in the ~/mozilla/src/obj*/dist/bin directory.

Run the file "mozilla" or "firefox", not the binary "mozilla-bin" or "firefox-bin".

For more detailed information visit Real World Mozilla Build Lab.

Building on OS X

The following instructions where written for Firefox 3.0.* builds. Try Ezadkiel Villarico Marbella's page for more detailed instructions.

Build pre-requisites and instructions for OS X can also be found at the Mozilla Developer Center.

Although those instructions are good, it may be necessary to take a few extra steps. For instance, the build may have trouble finding the glib dependency. If this happens, try adding this to your path:

export PATH=$PATH:/sw/bin;/sw/sbin

If you have built Firefox in your home directory and are trying to start it from the command line try these steps:

cd ~/mozilla/dist/Minefield.app/Contents/MacOS
./firefox -Profilemanager -no-remote