Yeah, it’s a sweet box, Mr. Karel

While trying to resolve my “when should I retire a computer” dilemma, I realized I might not need to spend any money at all. After all, my overengined Windows desktop has plenty of capacity. Tonight, I found out how much.

Yesterday, I removed the Windows partition on one of my hard drives and replaced it with Fedora 13. After system updates, I did the following:

  1. Downloaded ccache source code directly from ccache.samba.org. (Fedora’s ccache is version 2.4. This one is version 3.1.)
  2. Unpacked ccache and installed it:
    tar -xzf ccache-3.1.tar.gz
    cd ccache-3.1
    sh configure
    make
    su
    make install
    exit
  3. Added ac_add_options --with-ccache to my .mozconfig
  4. Built a first pass of mozilla-central:
    cd mozilla
    make -f client.mk configure
    cd ../fx-opt
    time make -j4
    

    Total time: approximately 20 minutes. Finally, it runs fast enough for me not to worry.

  5. Moved the old objdir to a new folder and repeated the previous steps exactly.

The total time on that is astonishing:

real    3m39.293s
user    3m49.130s
sys    1m53.586s

Given builds in less than four minutes, I should’ve done this a couple years ago. A couple other thoughts:

  • I tried pymake -j4 as suggested in my previous blog post, but it failed to build.
  • I actually tried to avoid putting Fedora on the same box as my Windows system, thanks to the inconvenience of a boot loader before. With the computer I have now, it turned out to be a non-issue. The system still defaults to booting Windows, and by hitting F10 at boot time, I can tell it to boot Fedora instead by selecting the second hard drive.
  • I don’t think I need a solid state drive anymore…
  • Nor do I think I need to try tinkering with a RAM drive.
  • Anyone interested in a rarely-used Linux box built three years ago? Windows not included. I am willing to donate to a good cause…
  • I think I’m gonna have fun with this thing.

3 thoughts on “Yeah, it’s a sweet box, Mr. Karel”

  1. If you build it, fast `make -j`s will come. Or something like that.
    I recently replaced my old dual-core Pentium E2220 with a Xeon X3440, which is the cheapest quad-core chip with hyperthreading. Plus an extra 4GB of RAM while I was at it. The combination of extra cores, extra RAM, and hardware acceleration for VirtualBox meant that clean build times dropped by a factor of five(!). Best money ever spent…

  2. The trick to getting pymake to work on Windows is to use relative paths in your mozconfig.
    For example my mozconfig lives in $srcdir, and it’s:
    . $topsrcdir/browser/config/mozconfig
    mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir
    ac_add_options –enable-debug
    ac_add_options –disable-optimize
    ac_add_options –enable-tests
    re: ccache, I’m trying it now 🙂 I wonder if we do or can use this on the tinderbox build machines?

Comments are closed.