我一直在尝试用 ruby 1.9.3 构建鞋子,并在构建结束时收到以下错误:
main.c:(.text+0x70): undefined reference to `ruby_snprintf'
main.c:(.text+0xcb): undefined reference to `ruby_run_node'
dist/libshoes.so: undefined reference to `ruby_vsnprintf'
dist/libshoes.so: undefined reference to `rb_str_new_cstr'
dist/libshoes.so: undefined reference to `rb_intern2'
这是在Fedora 15盒子上。
经过多次谷歌搜索,我发现了以下评论:
"现在我记得我在哪里看到那些错误消息构建鞋子!那是我在没有RVM或apt-get帮助的情况下从源代码编译Ruby的时候(对你来说很美味(。Ruby makefile做出了Shoes和它的耙子文件不喜欢的选择。
我尝试使用 rvn 重新安装 ruby 1.9.3,但没有运气。 此外,我尝试从源代码构建 ruby 1.9.3,并查看 defines.h 等,看看我是否可以了解如何进行构建以设置鞋子的构建。 也没有运气。
有谁知道如何让鞋子来建造? 有没有办法配置和构建 ruby 1.9.3 以便构建鞋子? 我必须破解鞋子的源代码吗? 是否有一些关于构建 ruby 的文档来解释如何构建 1.9.3 以便定义上述五个引用? 我注意到当我构建 ruby 时,源文件 vsnprintf.c 没有被编译。 ruby_snprintf是否需要该文件? 如果是这样,如何配置 ruby 构建过程来编译它?
尝试安装绿鞋。
您尝试安装的是原始的鞋子,它有一些本机C组件。Green Shoes是纯粹的Ruby,没有C依赖。
我做了一些谷歌搜索,偶然发现了这个,我希望它有所帮助: