代码之家  ›  专栏  ›  技术社区  ›  Mizipzor

生成qpid时的ruby_library cmake变量

  •  2
  • Mizipzor  · 技术社区  · 14 年前

    我正在尝试建立 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 RUBY_* 变量已经在cmake中设置,比如ruby_可执行文件和ruby_include_dir。

    什么是ruby_库?它应该设置为什么?ruby安装在c:\ ruby192中。

    1 回复  |  直到 14 年前
        1
  •  1
  •   Jack Kelly    13 年前

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

    #  RUBY_LIBRARY      = full path to the ruby library
    

    我看见你在窗户上。我猜要链接到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编译器链接时出现问题。我很久以前就把那个发球给了别人。