Wow.

All this time Google had me believing that Chrome was lighter and smaller
than Firefox. I had to go check on my Ubuntu system before I really
believed it: Firefox fits everything into a 29Mb directory, while the
Chromium executable by itself is over 50Mb.

I probably won't try Chrome on LFS, but thanks very much all the same.

(I am now looking at Midori as a lightweight alternative to Chrome: <
http://www.twotoasts.de/index.php?/pages/midori_summary.html>)

William Tracy
[email protected]
Cell phone: (805) 704-0917
Internet phone: (707) 206-6441


On Mon, Jan 2, 2012 at 8:23 PM, <[email protected]> wrote:

>
>
> Greetings,
>
>
>
>
> I somehow managed to build google's Chrome browser the BLFS-way at the end
> of
> last year (a long time ago :).
>
> The starting point for help and enlightenment is obviously "The Chromium
> Projects",
>  'dev.chromium.org/developers/how-tos/get-the-code'.
>
> However, my overall build process didn't always go smoothly so I thought
> maybe some of
> these modest notes below might be of help for other adventurous souls who
> live life in the fast
> lane while always staying on the cutting edge.
>
> -- You NEED
>
> 1.  Firefox 9.0.1 (9.0 if you are a mac user :)
> Why: to download the Chrome tarball :)
>
> 2.  the Chrome browser.
> Why: to get with the program.
> According to the latest news, Chrome has overtaken Firefox as no 2 browser
> and
> is in hot pursuit of IE (well, maybe not so hot, but the fateful 2025 is
> looming ever closer).
>
> So let's get to the nitty-gritty!
>
> -- DETAILS (steps, pointers, etc.)
>
> 1. As noted above, the basic build instructions are at the above URL.
> >From there you can spread your sights and knowledge left and right, up and
> down.  Including the download link.
>
> First you download the tarball (about >= 1.2 GB). On a lousy DSL line like
> mine that means long, joyful, uninterrupted hours of watching football.
>
> The tarball has a name like, r116078, which shows the latest development
> revision from which it was made.
> This is important because you are strongly urged to update the resulting
> tree
> to the latest release before starting the build. The development, as you
> will
> notice at the end of one of the links out there, runs fast and furious.
> (See below for the update how-to.)
>
> Untar it somewhere. Carefully, especially as to the location. Unprivileged.
>
> For personal reasons (whim), I rooted my decompressed Chrome tarball tree
> in
>  'usr/local/chromium'.
> The actual root is located at the only subdirectory of
> 'usr/local/chromium':
>  'src'.
> The whole tree takes up about 7 GB. The 'chrome' subdirectory weighs in at
> about 0.6 GB.
> (the build, when subdirectory 'out' is created, adds another half a gig
> to the whole "mozilla".)
>
> 2. Before you start, you must also download a set of "tools":
>  /usr/local/depot_tools' (in my case.)
> Small, trivial, a non-event (compared to the tarball download and its
> unpacking at step 1. above)
>
> According to documentation,
> "Chromium uses a package of scripts, the "depot_tools", to manage
> interaction
> with the Chromium source code repository and the Chromium development
> process."
>
>
> Most important tool (app) therein is 'gclient' (IMHO).
> The good (?) thing, "depot_tools" are updated automatically and
> periodically
> (like when you run 'gclient' - again, see below)
>
> 3. Google uses (for reasons of their own) a project (version) control
> method
> which to me sounds like a dialect of "Subversion".
>
> To update your tree to the latest revision before your actual build
> (strongly
> recommended) you run something like,
>  gclient sync'
> This make take a while depending on how behind you are and how busy they
> were.
>
> To check out Chromium you type:
>  'gclient config <URL_of_Chromium_svn>'
> They recommend to start with the tarball and then to update it (fully or
> partially), i.e., avoid this kind of full checkout.
>
> 4. Google uses (again, for reasons of their own) a "configure" procedure
> called 'gyp_chromium' (this app is in the main tree; not in "tools").
>
> The "in" files are called "*.gyp" and are all over the place (and updated
> as
> part of the update process; hence, another reason to be up-to-date).
> The "out"s (i.e. the resulting "Makefiles") are called "*.mk".
> I suppose you can futz around with the gyps, if you so desire (and need).
> Personally, I let them be for this, my first build.
>
> Running 'gyp_chromium' is another non-event, about half a min. or so.
>
> 5. Now, finally, to the BIG 'make' EVENT.
>
> To create the "chrome" browser, you basically just type
>  make chrome   # add "Release" or "Debug" depending on your goals in life.
>
> If successful, after about 90 min. you end up with a lovely new born (to
> enhance the celebratory mood of the New Year's Eve party):
>
> alex[/usr/local/chromium/src]% ls -og out/Release/chrome
> -rwxr-xr-x 1 78790552 2011-12-31 19:41 out/Release/chrome
>
> -- Additional NOTES
>
> 6. There's no install step ('make install' or some such). This is it.
> What you find at 5. above is THE executable, so you deal with it
> accordingly.
>
> 7. Chrome (Chromium) is very fussy about privileges (no root, please) and
> gets very happy when it finds your system in a clean, up-to-date state.
>
> My GUESS here, before you attempt the build, you're supposed(?) to run a
> "dummy", test 'chrome' executable:
>
> alex[] ls -og
>
> /usr/local/chromium/src/chrome/tools/test/reference_build/chrome_linux/chrome
> -rwxr-xr-x  61576000 ...
>
> which is distributed (as a courtesy? ) as part of the main tarball.
>
> 7a. If you run it in graphics mode (X11), it looks like a full-fledged
> chrome
> browser (build 89207 - as opposed to 115909, my "real" build), so you can
> see
> what to expect (or give up on building your own and use this demo build as
> a
> binary distribution - like for Ubuntu, and thereby express one more time
> your
> hate of and disdain for Micro$oft)
>
>
> 7b. If run in command mode (like where you'd attempt your build), it
> appears
> to display its gripes about what's inadequate with your system, such as old
> and/or missing libraries, packages and the like.
> The corollary, if the output is not "clean" (clean = no ugly message
> beyond the expected "cannot open display"), first do some work and
> straighten
> up your system until you feel you can fly right.
>
> -- TODO (as they say)
>
> 8. After the party music dies down, I'll play a little bit with the new
> browser, to get the hang of it; it appears to use a somewhat different
> paradigm (I like this word no end. I don't know exactly what is means, but
> I
> feel it adds a sorely needed touch of class to this post) which may
> require a
> little getting used to.
>
> 9. This I feel is very important and higher priority.
> On the same machine, a Firefox build/install takes no more than ~ 35 min.
> My chrome build was, like I said, 90 min. or so.  A lot of bloat?
> (I'm fully aware, _my_ bloat is somebody else's freedom fighter - but still
> and all ...).
>
> Most likely, there's plenty of stuff in there I will never need.
> With Firefox one uses those "--with"s and "--disable"s and you feel like
> you're in control.
> Here, without some different human intervention, 'make' traverses the
> whole tree
> you throw at it unimpeded and builds everything in sight with great gusto.
> I've been left with the uneasy feeling I compiled into this executable even
> Larry Page's kitchen sink.
>
> At the very least I might try to prune the tree to the bare necessities.
> Playing with them gyp files shouldn't be a bad idea either, I figure.
>
> Wishing everybody einen guten Rutsch ins neue Jahr,
> -- Alex
> --
> http://linuxfromscratch.org/mailman/listinfo/blfs-support
> FAQ: http://www.linuxfromscratch.org/blfs/faq.html
> Unsubscribe: See the above information page
>
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to