Hi Kendall,

On Mar 19, 2004, at 11:56 AM, Kendall Bennett wrote:

Hi All,

We are looking at using Mozilla for a project we are working on and need to embed it into an application so we can use it for portable development (the app would be entirely written on top of Mozilla). Anyway I have been looking at the Embedded project and it looks cool, but it seems rather large. I took a look at the wxMozilla project and from what I can see the files required the embed Gecko on Win32 total about 13Meg in size.

Is that correct or am I missing something?

The wxMozilla distribution can be trimmed somewhat, although how much depends partly on what your needs are of course. Specifically, you can get back about 1-2MB by removing all the editor embedding libraries that wxMozilla includes in its distribution. You can look at the base-browser config file to get an idea of what most of the files in the package are:


http://lxr.mozilla.org/seamonkey/source/embedding/config/basebrowser-win

I also noticed that there are projects to embed Mozilla into handheld devices, so clearly 13Meg for binary files is a bit much. Is there a stripped down version of Mozilla that takes up a lot less space that we might be able to use? Our project would only need basic HTML support (CSS, frames etc). We probably don't need JavaScript, as we may be using PHP/SQLite on the server side of things.

There's also Minimo (http://www.mozilla.org/projects/minimo/) for embedded devices, but I don't think that's what you're looking for here. However, I'm not familiar with all the initiatives in this area so hopefully someone else can comment further.


Also I was wondering what the status of Firefox is related to embedding? Is Firefox smaller than the current Mozilla, and if so would it be a betetr candidate for getting this into an application with a smaller size?

Firefox and Mozilla are both Gecko under the hood, and both use the GRE, so from an embedding perspective they're basically the same. Any size advantages Firefox has it gets from trimming what it ships with the GRE.


Finally is it possible to static link all this into a single application binary rather than required 13Meg of runtime DLL's? We would prefer to avoid the headaches of shared libraries on Windows and Linux for our application, so static linking it all would solve that.

No, unfortunately not yet, primarily because the NSPR does not support static builds. This would make life a lot easier for wxMozilla too, as we currently have to set a PATH variable when running from wxPython to correctly find the Mozilla shared libraries. You would still have to ship the GRE and components, of course, but you could statically link the core NSPR and XPCOM libraries.


As for the various component libraries (files in the components subdir of the GRE), they are all dynamically loaded, so I don't think those could be statically linked. But since they are dynamically loaded, you won't have problems with loading the wrong library or version, and they also offer the advantage that you can just delete any optional components you don't want to use. (Of course, other components are required and can't be deleted... see the basebrowser file for more info.)

Thanks,

Kevin

_______________________________________________
mozilla-embedding mailing list
[EMAIL PROTECTED]
http://mail.mozilla.org/listinfo/mozilla-embedding

Reply via email to