我在 ext/Q/flagvalue.c 中有一个简单的扩展
我的 ext/Q/extconfig.rb 看起来像这样:
require 'mkmf'
create_makefile('Q/flagvalue')
Rakefile 中的任务是这样设置的:
Rake::ExtensionTask.new("Q") do |extension|
extension.lib_dir = 'lib/Q'
end
当我rake build
,我得到以下输出:
mkdir -p tmp/x86_64-linux/Q/1.9.3 cd tmp/x86_64-linux/Q/1.9.3 /usr/local/rvm/rubies/ruby-1.9.3-p286/bin/ruby -I。../../../../ext/Q/extconf.rb 创建 Makefile 光盘 - cd tmp/x86_64-linux/Q/1.9.3 制作 编译../../../../ext/Q/flagvalue.c 链接共享对象 Q/flagvalue.so 光盘 - 安装 -c tmp/x86_64-linux/Q/1.9.3/Q.so lib/Q/Q.so 耙中止! 没有这样的文件或目录 - tmp/x86_64-linux/Q/1.9.3/Q.so
所以看起来编译器编译并链接flagvalue.so并且安装程序尝试安装不存在的Q.so ......这个错误来自哪里,我该怎么办?