Valgrind and Mac OS 10.6

A new entry in the annals of unfortunate software release dates:

  • On August 19, Valgrind 3.5.0 was released. It added support for Mac OS 10.5.
  • On August 28, Mac OS 10.6 was released.
  • Valgrind 3.5.0 does not support Mac OS 10.6.

If you try to install Valgrind on a machine running Mac OS 10.6, it will fail at configure-time.  If you hack the configure file appropriately so that the install completes, Valgrind will run but crash quickly on any program.  Bug 205241 has the details.  Greg Parker says he has a series of patches to make Valgrind work and he’s just waiting for the open source release of xnu (the core of Mac OS X) before making them public.  With some luck, these fixes will make it into Valgrind 3.5.1 relatively soon.

However, once that’s fixed, there’s another problem.  Mac OS 10.6 uses 64-bit executables by default.  In comparison, 10.5 uses 32-bit executables by default, even though it’s capable of creating and running 64-bit executables.  Unfortunately Valgrind’s support for 64-bit executables on Mac OS X isn’t very good.  The main problem is that start-up is sloooooow, which means that even Hello World takes over four seconds to run on my MacBook Pro.  Fixing this one will be harder, as it will require reworking the Mac OS X start-up sequence.  Bug 205938 is tracking this problem.

Related to this: does anyone know if there is an easy way to have both 10.5 and 10.6 installed on a single machine?  That would be a big help when it comes to developing and testing Valgrind’s Mac OS X support.

6 Responses to Valgrind and Mac OS 10.6

  1. Partition your disk in two (Disk Utility can resize HFS+ if that’s useful to you) and install one OS on each partition. You can hold the option key during boot to select which disk, or use Startup Disk in System Preferences to make a permanent default decision.

    You can also get fancy with using a 3rd partition for user data for both OSes if you’re comfortable enough making symlinks or screwing with mount points. Application preferences incompatibility may be problematic, however.

  2. Regarding:
    Related to this: does anyone know if there is an easy way to have both 10.5 and 10.6 installed on a single machine?

    I use an external hard drive to keep an old copy of Tiger around.

  3. VMWare Fusion can run 10.5 in a VM (and probably 10.6 as well). Theoretically you can only run the Server versions of OS X in VMWare, but this is pretty easily worked around, GIYF.

  4. Looks like XNU is released now …

  5. You can also share your home folder between both OSes:

    http://www.cocoabuilder.com/archive/message/xcode/2009/6/24/29215

  6. A patch has been posted at
    https://bugs.kde.org/show_bug.cgi?id=205241

    It’s not quite clean enough for trunk, but should be good enough for those of you playing along at home.