需要 boost::dynamic_bitset<>在 extconf.rb 中
我正在发布 Ruby C/C++ 扩展,并尝试确保 extconf.rb 中列出了所需的所有库。我一直无法弄清楚如何需要 boost 库,尤其是dynamic_bitset<>班级。
到目前为止我尝试过的:
# Require used libraries
have_library("stdc++")
have_library("boost", "boost::dynamic_bitset<>")
即使我已经安装了 boost,并且扩展编译完美,我得到了这个:
$ ruby extconf.rb
checking for main() in -lstdc++... yes
checking for boost::dynamic_bitset<>() in -lboost... no
关于如何正确要求安装 boost 的任何想法?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
dynamic_bitset
未在库中定义,它是一个仅标头的 boost 组件。您可以在这里找到哪些 boost 组件属于这种类型:
http://www.boost.org/doc/libs/1_57_0/more/getting_started/unix-variants.html#header-only-libraries
我测试了它,示例位于
< a href="http://www.boost.org/doc/libs/1_57_0/libs/dynamic_bitset/example/example1.cpp" rel="nofollow">http://www.boost.org/doc/libs/1_57_0/libs/dynamic_bitset/example/example1.cpp
编译时没有任何库:
所以你不必寻找boost 库,但您可能想使用
have_header()
、find_header()
、dir_config()
查找 boost 标头。如果您需要灵感,请在 google 上搜索 extconf.rb 和 boost 以及 have_header,您可能会在 github 上找到一些 extconf.rb 文件。
dynamic_bitset
is not defined in a library, it's a header-only boost component.You can find out which boost components are of this type here:
http://www.boost.org/doc/libs/1_57_0/more/getting_started/unix-variants.html#header-only-libraries
I tested it out, the example at
http://www.boost.org/doc/libs/1_57_0/libs/dynamic_bitset/example/example1.cpp
compiled without any libraries:
So you don't have to look for the boost library at all, but you might want to look for the boost header using
have_header()
,find_header()
,dir_config()
.If you need inspiration, google for extconf.rb and boost and have_header, you might find some extconf.rb files on github.