Johan Nilsson
1/5/2005 9:11:00 AM
Hi,
I'd be grateful for some hints on how to install a Ruby extension library
for in-house usage. The library consists of both native + Ruby code. The
library will be used by a number of utility scripts that ideally would just
have to be copied onto the hard drive and run.
It's not feasible to require the users to compile the extension, as it has
quite a lot of dependencies (and it should also be built using VC.NET
anyway). Therefore I'd like the extension to be delivered pre-built,
including any run-time dependency DLLs. The platform that it should run on
is (at least for now) Windows only, but I'm working to get the extension to
work under linux as well.
I'll try to give a more concrete (simplified) example:
myext/myextrb.rb <= requires myext.dll
myext/myext.dll <= requires myext-dep.dll
<somepath>/myext-dep.dll <= no special dependencies
(user's should only have to use "require 'myext/myextrb'" to use the
library)
Ideally I'd like to stay out of adding the myext-dep.dll to any system path,
so what I've tried to do is to put it in the same directory as the other
stuff, and adding the following at the very top of myextrb.rb (before
"require 'myext'"):
ENV['PATH'] = ENV['PATH'] + File::PATH_SEPARATOR + File.dirname(__FILE__)
Might be hackish, but it works - any better way?
And, back to the real question: what tools can I use to make an installation
script for this kind of thing? Is there already something available? Sorry
it the answer's obvious, but it's my first attempt at such a thing.
Thanks in advance // Johan