当一个扩展包含来自另一扩展的头文件时,如何编写 extconf.rb 文件?
这是一个后续问题:一个目录下的多个 Ruby 模块
如果这些扩展相互包含会发生什么?例如,您有以下结构:
ext/foo
ext/bar
在 ext/bar/bar.h
中,您有一个
#include "foo.h"
foo.h
和 foo.cpp
编译形成foo.o
,让生活变得更复杂一些。
最后,foo 和 bar 必须是单独的扩展。
这是如何管理的?我主要不知道如何将 ../foo
添加到 bar.h
的搜索路径中。符号链接看起来很黑客。
This is a follow-up question for: Multiple Ruby modules under one directory
What happens if these extensions include each other? For example, you have the following structure:
ext/foo
ext/bar
In ext/bar/bar.h
, you have a
#include "foo.h"
foo.h
and foo.cpp
compile to form foo.o
, to make life a little more complicated.
Finally, it is necessary that foo and bar be separate extensions.
How is this managed? I can't figure out how to add ../foo
to the search path for bar.h
, primarily. Symbolic links seem hack-ish.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 mkrf_conf.rb 文件先执行另一个
https://github.com/ rdp/ruby_tutorials_core/wiki/gem
you could use a mkrf_conf.rb file that does one then the other
https://github.com/rdp/ruby_tutorials_core/wiki/gem