不确定上述错误的含义。我刚刚在我的mac上安装了ghmm,并且每次执行import ghmm
时都会出现此错误。我在我的linux机器上的ghmm安装上没有收到此消息,除了所有功能看起来都没问题。
我想知道是否有人之前已经看过这个,如果我有什么办法可以摆脱这个。我在两次安装中唯一不同的是autogen.sh文件引用了我的mac上不存在的“libtoolize”,所以我把它更改为替换“glibtoolize”,它允许它编译和安装正常。 / p>
关于这个错误实际意味着什么的建议(希望我能解决它)会很棒。
(我在谷歌上找不到答案,但这个程序似乎并不特定于ghmm)
答案 0 :(得分:2)
我愿意在这个问题上得到纠正,但我猜这是直接与ghmm
或你的编译工具无关。我认为您看到的错误消息来自OSX使用的BSD随机数函数(它们是documented here)。
假设ghmm
导致警告(而不是python),可能可以将构建过程配置为使用普通的rand
或其他PRNG。或者,也许您可以找到添加对initstate()
的调用的正确位置(请参阅上面的文档链接)以提供所需的状态信息。
手册页中的这一位可能指向您的问题:
如果使用少于8个字节的状态信息调用initstate(),或者如果setstate()检测到状态信息已出现乱码,则会在标准错误输出上打印错误消息。
答案 1 :(得分:2)
eaj是正确的,initstate需要超过8个字节的状态信息。对ghmm执行此操作的最佳方法是使用./configure的--enable-gsl或--with-rng = bsd选项。 --with-rng = bsd使类型为“ghmm_rng_state_t”8个字节而不是1.请参阅ghmm目录中的rng.h。
答案 2 :(得分:0)
ghmm网站上说的是“libtoolize”:
Mac OS X:10.6附带一个破坏了libtool的破坏了安装(它还附带了Python 2.5,所以你需要更新)。 James Howard在邮件列表上发布了一个解决方案:[Ghmm-list]在OS X 10.6中编译 http://sourceforge.net/mailarchive/message.php?msg_id=25874107 HTH