require 'mkmf'
create_makefile("my_test")
执行这个Ruby程序,便会创建出一个Makefile,剩下的工作就很简单了:make。
顺便说一下,小规模的Makefile编写起来还比较容易,但规模大了,着实让人难以忍受,幸好有许多自动化的工具,比如在*nix下常用的 autoconf,这里的也算是一种。通常这种自动化工作生成的Makefile具有相当完整的功能,比如清理、安装之类的功能等。自动化虽好,用起来才好,一些在*nix下工作朋友还停留在手工编写Makefile的阶段,有耐性。
做完事,该检查一下,下面是一个测试程序,这里用到了Ruby的单元测试框架。
require 'my_test'
require 'test/unit'
class TestTest < Test::Unit::TestCase
def test_test
t = MyTest.new
assert_equal(Object, MyTest.superclass)
assert_equal(MyTest, t.class)
t.add(1)
t.add(2)
assert_equal([1,2], t.instance_eval("@arr"))
end
end
前面提到过这个例子的出处,当然,那里也是获得更多信息的更好去处。
