Chef 升级到 0.10:dep_selector gem 中缺少 libgecodeminimodel.so 文件
我遵循一般文档升级chef-server,但是升级后无法启动,因为找不到gecode库文件libgecodeminimodel.so。
该文件从我安装 gecode 3.7.1 时就存在,因此似乎只需要为 dep_selector gem 设置包含路径。我尝试重新安装 gem,但这并没有解决问题。
这是错误:
/home/chef/.rvm/gems/ree-1.8.7-2011.03@chef_server/gems/dep_selector-0.0.8/lib/dep_gecode.so: libgecodeminimodel.so.30: cannot open shared object file: No such file or directory - /home/chef/.rvm/gems/ree-1.8.7-2011.03@chef_server/gems/dep_selector-0.0.8/lib/dep_gecode.so (LoadError)
这是文件的位置:
dizzy dep_selector-0.0.8 # ls -l /home/chef/.rvm/gems/ree-1.8.7-2011.03@chef_server/gems/dep_selector-0.0.8/lib/dep_gecode.so
-rwxr-xr-x 1 chef chef 485222 2012-02-19 23:12 /home/chef/.rvm/gems/ree-1.8.7-2011.03@chef_server/gems/dep_selector-0.0.8/lib/dep_gecode.so
dizzy dep_selector-0.0.8 # ls -l /usr/local/lib/libgecodeminimodel.so*
lrwxrwxrwx 1 root root 26 2012-02-19 22:24 /usr/local/lib/libgecodeminimodel.so -> libgecodeminimodel.so.30.0
lrwxrwxrwx 1 root root 26 2012-02-19 22:24 /usr/local/lib/libgecodeminimodel.so.30 -> libgecodeminimodel.so.30.0
-rwxr-xr-x 1 root root 1194016 2012-02-19 22:24 /usr/local/lib/libgecodeminimodel.so.30.0
这个问题似乎很旧,因为它之前就出现过( http://comments.gmane.org/gmane.comp.sysutils.chef.user/923 )但我没有安装选项来自存储库的 libgecode-dev,因为我使用的是旧的 FC11 盒子。
提供了从源代码安装gecode的说明,但我缺少一些东西。感谢所有的想法和建议,因为我们的厨师服务员现在显然已经停机了。
I followed the general doc to upgrade chef-server, but it fails to start after the upgrade because it can't find the gecode library file libgecodeminimodel.so.
This file exists from when I installed gecode 3.7.1, so it seems like a include path just needs to be set for the dep_selector gem. I've tried re-installing the gem, but that didn't fix the issue.
Here's the error:
/home/chef/.rvm/gems/ree-1.8.7-2011.03@chef_server/gems/dep_selector-0.0.8/lib/dep_gecode.so: libgecodeminimodel.so.30: cannot open shared object file: No such file or directory - /home/chef/.rvm/gems/ree-1.8.7-2011.03@chef_server/gems/dep_selector-0.0.8/lib/dep_gecode.so (LoadError)
Here's where the files are:
dizzy dep_selector-0.0.8 # ls -l /home/chef/.rvm/gems/ree-1.8.7-2011.03@chef_server/gems/dep_selector-0.0.8/lib/dep_gecode.so
-rwxr-xr-x 1 chef chef 485222 2012-02-19 23:12 /home/chef/.rvm/gems/ree-1.8.7-2011.03@chef_server/gems/dep_selector-0.0.8/lib/dep_gecode.so
dizzy dep_selector-0.0.8 # ls -l /usr/local/lib/libgecodeminimodel.so*
lrwxrwxrwx 1 root root 26 2012-02-19 22:24 /usr/local/lib/libgecodeminimodel.so -> libgecodeminimodel.so.30.0
lrwxrwxrwx 1 root root 26 2012-02-19 22:24 /usr/local/lib/libgecodeminimodel.so.30 -> libgecodeminimodel.so.30.0
-rwxr-xr-x 1 root root 1194016 2012-02-19 22:24 /usr/local/lib/libgecodeminimodel.so.30.0
This issue seems to be old, because it's come up before ( http://comments.gmane.org/gmane.comp.sysutils.chef.user/923 ) but I don't have the option of installing libgecode-dev from a repo, as I'm on an old FC11 box.
The instructions are provided for installing gecode from source, but there's something missing for me. All thoughts and suggestions are appreciated, as our chef-server is clearly down right now.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我对这个解决方案并不满意,但我最终滚动了安装到 /usr 而不是 /usr/local 的 gecode rpm。这似乎已经解决了问题。
您也可以从 tar 直接安装到 /usr 中,但这不符合一般文件系统结构,我不推荐它。
I'm not happy with this solution, but I ended up rolling an rpm for gecode that installed into /usr instead of /usr/local. This seems to have solved the issue.
You could likely also install from the tar directly into /usr, but that's against general file system structure, and I wouldn't recommend it.