构建Qpid时RUBY_LIBRARY cmake变量

时间:2010-09-22 15:49:40

标签: ruby cmake qpid

我正在尝试构建Qpid。运行CMake时,会打印到日志:

Could NOT find Ruby  (missing:  RUBY_LIBRARY)

[ ... more stuff cut for brevity ]

CMake Error at src/CMakeLists.txt:96 (include):
  include could not find load file:

    C:/qpid/0.6/qpid/build/src/rubygen.cmake

它似乎失败了,因为它找不到应该生成的文件。但它没有找不到Ruby。

但它似乎至少部分找到了Ruby,因为在CMake中设置了一堆其他RUBY_*变量,如RUBY_EXECUTABLE和RUBY_INCLUDE_DIR。

什么是RUBY_LIBRARY以及它应该设置为什么? Ruby安装在C:\ Ruby192。

1 个答案:

答案 0 :(得分:1)

根据/usr/share/cmake-2.8/Modules/FindRuby.cmake

#  RUBY_LIBRARY      = full path to the ruby library

我看到你在Windows上。我猜想要链接DLL,你要么指向${RUBY_DIR}\lib\msvcrt-ruby191.lib${RUBY_DIR}\bin\msvcrt-ruby191.dll(我使用的是我从ruby-lang.org抓取的Ruby 1.9.1二进制文件中的名称) 。要链接静态库,您需要${RUBY_DIR}\lib\msvcrt-ruby-191-static.lib

我不知道这些库是针对msvcrt构建的,这会在与VS2008编译器链接时引起问题。我很久以前把那个毛球扔掉了。