Defeated by an Eclipse build… again

Tonight I spent a few hours hacking on a data collection agent for Eclipse TPTP (kind of sounds like ToiletPaperToiletPaper, yeah?). For fun, and partly because I want to maybe package TPTP for distribution, I decided that I would try building the libraries I was linking against from source. I was defeated.

Of course, I tried first to build it without reading the instructions. What could be so hard? Isn't it just ./configure && make? Um, no. I knew it was going to be painful as soon as I saw *.dsp files sitting around (Microsoft Visual Studio crap). I found a bash script that seriously had a suffix .script, so I ran it. Compile and link errors flew by, so I hacked the script so that it would actually die if a compile failed on a subcomponent. I managed to build all the subcomponents but one; there seemed to be a missing header file called CommonBaseEvent.h. Then I looked in CVS to see that this file had been intentionally removed. Then I looked in the build instructions:

C. Linux Build Instructions
[...]
2) Copy CommonBaseEvent.h from the TPTP Native Logging SDK into the include/tptp directory. Use the 4.1 version of this file to correspond with the 4.1 version of the CBE library packaged with the SDK. Otherwise, copy the CommonBaseEvent.dll that corresponds with the include file into the AC's bin directory.

Unbelievable. Yeah, putting the Windows .dll file in there will really fix things good. Anyway, I copied over the stupid header file and got a bit closer. Then the build failed in osslatch.h in the RASharedMemory subcomponent. This subcomponent is full of assembly code and I couldn't figure out the problem at first glance, so I said "screw it". I'll just link against the libraries that they built (somehow).

This code was littered with defines and macros starting with "SQL", so I was kind of curious as to where it came from. Could this have been ripped off of DB2? Apparently, yes. These files had comments referencing something called "OSSE", so I did a Google search for "osse ibm". OSSE (Operating System Services Everywhere) is IBM's OS-abstraction layer that it uses for DB2. Anyway, I was satisfied by my sleuthing, but the build still didn't work.

In summary, I hate how the Eclipse Foundation isolates itself from other hackers by releasing code like this that takes heroics to build. It's an old story that hasn't changed a bit. Eclipse could be so much more approachable to other developers if only the players (mainly IBM) took a step back and thought, "how can we make this stuff easier to get involved in? how do other projects do it?". Until then, Eclipse will remain a tight conglomerate of major industry players (again, mainly IBM). But, then again, that's probably how they like it.

Also, can't you agree on some code formatting for C++ code? Some of the stuff I've seen makes my eyes bleed.

Share:
  • Twitter
  • del.icio.us
  • Digg
  • Google Bookmarks
  • FriendFeed
  • Facebook

4 Comments

  • 1 murray

    Posted February 17, 2006 at 9:27 pm
    Permalink

    dude...wow. I remember one time i was checking out some FNDJSO with my BBA and it totally corrupted a line in my C-+/? build. What a bummer.

  • 2 Nicholas

    Posted February 18, 2006 at 5:13 am
    Permalink

    Scathing, They should at least try to be true to the whole concept of open source development. Making it difficult to get involved in defeats the purpose and takes away the advantages of the open source development process which is millions of geeks around the world who create software that is better than what is on the market and is contantly improved upon and freely available.

    Go geeks!

  • 3 Murray

    Posted February 19, 2006 at 12:27 am
    Permalink

    i do like how open source is comparable to a marxist revolution. Also, I got bored in class on tuesday, ordered an ipod, and it arrived on friday. so awesome.

  • 4 Jeremy

    Posted February 19, 2006 at 11:02 am
    Permalink

    In a complete dystopia of software patents, yeah, I can see the similarities. The working class (us lowly hackers) is in constant struggle with the bourgeois (the owners of companies with fat patent portfolios) for control over the means of production (software patents). Not only does this arrangement inhibit a software developer's ability to write libre software, it inhibits a software developer's ability to make money from software without a license from the bourgeois. I'm dorky.

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*