Dependencies
Work, as I’ve implied, has lately been centered around Sakai and all the various technologies it requires to work. Lately I’ve discovered that just dropping in a binary build is not useful if you’re going to try to hack Sakai; you need to build from source (of course, of course.)
Most big modular tools make use of a GNU tool called make. make is essentially a script which allows developers to define (in a “makefile”) several “targets” which represent end states, and the tools, files, and steps needed to create that end state. The sysadmin then installs the software by “running” the makefile, usually with a command like make install (which means, attempt to reach the target called “install.”) Other usual targets include clean (remove traces of a previous make run,) which is a sort of undo for installations.
If your system has a good collection of libraries and software tools, and the makefile has been well-written, you can usually install software with something like ./configure; make; make install or, sometimes, ./configure; make; make test && make install if there is a test target defined. If you’re missing a few files, though, make will tell you about it, then quit.
Sakai is installed from source with Maven. It’s probably a massive oversimplification to call Maven the Java counterpart to make, but in this situation they play the same role. I give the command maven sakai, and it runs for ten to fifteen minutes, streaming page upon page of status report through my terminal window, then eventually tells me why it couldn’t actually do what I asked—usually because of some dependency it couldn’t download.
Dependencies are, to oversimplify, when one little bit of code requires another little bit of code to run. Maven tells me what I’m missing, usually a .jar file of some flavor, and I drop it into Google to see if I can find a site to download it from. Once I’ve found it, I load it in to Maven’s own cache, and restart the whole dance.
I’ve lost track of how many times I’ve tried to install Sakai this way; must have been five to ten last night, and three more this evening… hey! IT JUST BUILT! Cool!
Now to figure out how to break it…
Now Playing: Hotel Womb from Starfish by The Church