经过多年离开Ruby之后,我又回到了全力以赴,刚刚切断了我的第一个宝石,其中包括一个可执行文件。一切都像魅力一样。
然而,我面临的问题是,我还有一个启动脚本(不是gem istelf的一部分)守护可执行文件。另外,我还希望启动脚本将可执行文件指向/ var /
这样的位置据我所知,没有办法使用rubygems,gemspec等来指定在安装过程中被烧毁到系统其他部分的文件(例如,启动脚本到/etc/init.d,并配置为的/ var /)。如果你能做到这一点肯定没有意义。
所以...我的问题是......什么是自动安装这样的东西的正确程序。我正在使用RHEL,我想知道是否可能是时候让我的第一个RPM了。
有什么想法吗?
答案 0 :(得分:2)
你可以做到这一点。然而,它可能不是推荐的方法。但是,可以使用extensions
选项在gem安装期间运行任意代码。
Usage
spec.extensions << 'ext/rmagic/extconf.rb'
Notes
These files will be run when the gem is installed, causing the
C (or whatever) code to be compiled on the user’s machine.
只需将您需要的任何ruby代码放入extconf.rb
(或等效的)文件中。
从RubyGems指南构建C扩展的示例:
http://guides.rubygems.org/c-extensions/