This post originated from an RSS feed registered with Ruby Buzz
by Daniel Berger.
Original Post: OS X - Day Three
Feed Title: Testing 1,2,3...
Feed URL: http://djberg96.livejournal.com/data/rss
Feed Description: A blog on Ruby and other stuff.
So, I've had a while to tinker around with this thing for a few days now and it's been a mostly positive experience. The UI is very nice, the builtin apps are pretty cool (especially iTunes), and I can fire up a bash terminal. Yay!
I still don't understand some things, however. For example, I don't know exactly a .dmg file is, and why there's a Firefox icon on my desktop that looks like a mini hard drive that gives me an option to "eject". Or how to create desktop shortcuts. Some things took me a while to figure out, like how to get an X server up and running. I thought OS X *was* X Windows! Oops.
As I told my friend the other day, in some ways this is worse than starting from scratch because I have to unlearn what I've learned from MS Windows (and, to a lesser extent, the various UI's from UNIX distros). But, I'll muddle through.
With the help of drbrain I've also managed to get my development toolchain setup just about the way I want (including gvim and Eclipse). The sysutils package has several OS X specific bugs in the queue, so I've already fixed a couple of those, though I don't understand the primary error I'm getting:
malloc: *** Deallocation of a pointer not malloced: 0x3387f4; This could be a double free(), or free()
called with the middle of an allocated block; Try setting environment variable MallocHelp to see tools to help debug
This only seems to occur on OS X. I've seen lots of instances of it reported on Google, but no good explanation for what's causing it. I can duplicate it easily enough, but I don't know if it's a real programming mistake or a bug in gcc. In short, it whines whenever I try to increment a struct member that's a char**. I have to assign it to another variable first, then increment the new variable instead.