![]() |
1
3
我今晚也刚开始买这个。googling发现了一系列无法提供结果的建议
还有一些来自jamis的粘贴代码,这些代码本应替换package.rb中的函数,但原本应该替换的代码却找不到。 重新安装rubygems没有帮助。我正在重新安装Ruby………它已经修复了。虽然疼痛。 |
![]() |
2
5
找到它了!我在Windows上也遇到了同样的问题(它突然出现,没有我进行更新,但无论如何): 它与多个冲突的zlib版本有关(我认为)。 在ruby/lib/ruby/1.8/i386-msvcrt中,确保存在zlib.so文件。就我而言,它已经存在了。如果没有,您可以尝试安装RubyZlib。 然后转到ruby/lib/ruby/site_ruby/1.8./i386 msvcrt并删除其中的zlib.so文件。 在ruby/bin中,应该有一个zlib1.dll。出于某种原因,我的Ruby版本没有使用这个dll。我下载了最新版本(1.2.3)并安装在那里。我必须将其重命名为zlib.dll才能使用。 还有塔达!鲁比格姆斯又开始工作了。 希望这有帮助。 |
![]() |
3
4
首先,我感谢那个人,他提出了解决丢失zlib问题的方法。(不是我。:-) 不幸的是,我失去了原始文章的链接,但是Linux上解决方案的本质是编译Ruby,而Ruby配置脚本可以使用zlib头文件。在Debian上,这意味着在开始编译Ruby之前必须安装zlib开发包。 本文的其余部分不包含任何新内容,如果您对在类似Unix的操作系统中定制执行环境感到满意,建议您省略这些内容。下面是一些基础知识的简要介绍和分步说明的组合。 ------如何开始--------------------- 如果你想从控制台执行一个程序,比如说IRB,那么从文件夹中搜索名为IRB的文件,其顺序由名为path的环境变量描述。可以通过键入bash shell(然后按Enter键)来查看路径的值:
例如,如果系统中有两个版本的IRB,一个由“官方”软件包管理系统安装,比如yum或apt-get,到/usr/bin/irb,另一个由名为scoobydoo的用户编译并驻留在/home/scoobydoo/ourcompiledRuby/bin中,那么问题就出现了,这两个IRB-s中的哪一个被执行了。 如果有人写信给 /主页/scoobydoo/.bashrc 一条线:
并通过关闭终端窗口并打开一个新窗口重新启动bash shell,然后在控制台中键入irb, /home/scoobydoo/ourcompiledRuby/bin/irb将被执行。如果一个人写了
到 /主页/scoobydoo/.bashrc ,则执行/usr/bin/irb。 在实践中,人们想写作
因为这会将路径在分配给/home/scoobydoo/ourcompiledRuby/bin之前拥有的所有值都预先处理好。否则会出现问题,因为并非所有的通用工具都位于/usr/bin中,并且其中一个可能希望使用多个自定义构建的应用程序。 同样的逻辑也适用于库,除了环境变量的名称是ld_library_path 使用ld_库的路径和路径允许普通用户,他们没有根访问权,或者想尝试使用不受信任的软件,来构建和使用它们,而不需要任何根权限。 这个迷你版的其余部分假设我们将构建自己的Ruby版本并使用自己的Ruby版本,几乎不管发行版的官方软件包管理软件在系统上安装了什么。 1)================= 首先,创建几个文件夹并设置环境变量,这样文件夹就“有用”。
一个将以下两行添加到 /主页/scoobydoo/.bashrc
通过关闭当前终端窗口并打开新窗口或通过键入重新启动bash shell
在当前打开的窗口的命令行上。 对/home/scoobydoo/.bashrc的更改对保存/home/scoobydoo/.bashrc的修改版本之前启动的终端窗口/会话没有任何影响。 其思想是在会话开始时自动执行/home/scoobydoo/.bashrc,即使有人通过ssh登录。 2)================= 现在,可以确保系统上有zlib开发包。截至2011年4月,我还没有整理出细节,但是
在Debian系统上似乎已经足够了。其思想是,库文件和头文件都可以在系统的“官方”搜索路径中找到。通常apt-get和simile将头文件放在/usr/include,库文件放在/usr/lib 3)================= 从下载并解包源tar.gz http://www.ruby-lang.org
4)================= 如果控制台命令
打印到控制台
那么新编译的版本就是在命令上执行的版本
5)================= 其余的程序、gem、irb等可以通过以下命令正确执行:
这不应该是这样的,但截至2011年4月,我还没有找到任何更优雅的方式来做这件事。如果
再次给出zlib丢失的错误,然后应该尝试找出如何使zlib包含的文件和库可用于Ruby配置脚本并重新编译。(抱歉,目前我没有更好的解决方案。) 可能是脏的解决方案可能是将以下行添加到 /主页/scoobydoo/.bashrc
实际上,我通常用
但是gem应该在不给ruby“-ku”参数的情况下执行,否则会出现错误。 ——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————- |
![]() |
4
1
重新安装Ruby解决了这个问题。这不是我想要的;我想知道我为什么会遇到这个问题,但一切都解决了。 |
![]() |
5
1
它最常出现在下载失败的时候——也就是说,由于网络超时、错误的手动下载或其他原因,您的gem损坏了。再试一次,或者手动下载gems并指向
|
![]() |
6
1
如果
打开文件
并取代现有的
|
![]() |
7
1
那么,把cd转换成rubysrc/ext/zlib怎么样?
完成后,重新安装Ruby。 我在Ubuntu10.04上做了这个,并且很成功。 |
![]() |
8
0
尝试更新 ZLib 在你做其他事情之前。我在OSX和更新方面也遇到了类似的问题 Compress::Zlib (zlib的Perl接口)修复了它-所以我认为是 ZLib (现在是1.2.3)可能是你的问题所在… |
![]() |
9
0
如果所有其他操作都失败,请安装pure ruby zlib |
![]() |
pguardiario · 如何从gem内部引用文件 9 年前 |
![]() |
cwd · 如何使“bundle init”默认包含gems? 9 年前 |
![]() |
Hooli · 没有跑鞋宝石(Fedora) 9 年前 |
|
Aaron Pederson · 红宝石宝石“gamebox”的“捆绑”问题 10 年前 |
![]() |
user4443990 · Rubygems的依赖性问题 10 年前 |
|
Dubniak · 安装gemfile中未列出的简单导航gem 10 年前 |