Ошибка компиляции Ruby в Ubuntu 10
У меня есть VPS, который работает SolusVM. Я сейчас пытаюсь установить в него ruby 1.9.2.
Я следую этому руководству:
После того, как я запускаю эту команду:
apt-get update
apt-get -y install build-essential zlib1g zlib1g-dev libxml2 libxml2-dev libxslt-dev
Я получил эту ошибку:
root@makserver:/usr/local/src/ruby-1.9.2-p0# apt-get -f install
Reading package lists... Done
Building dependency tree... Done
Correcting dependencies... Done
The following extra packages will be installed:
libc6
Suggested packages:
glibc-doc
The following packages will be upgraded:
libc6
1 upgraded, 0 newly installed, 0 to remove and 80 not upgraded.
Need to get 0B/4252kB of archives.
After this operation, 4096B disk space will be freed.
Do you want to continue [Y/n]? y
debconf: apt-extracttemplates failed: Bad file descriptor
(Reading database ... 21594 files and directories currently installed.)
Preparing to replace libc6 2.11.1-0ubuntu7.2 (using .../libc6_2.11.1-0ubuntu7.8_amd64.deb) ...
open2: fork failed: Cannot allocate memory at /usr/share/perl5/Debconf/ConfModule.pm line 59
dpkg: error processing /var/cache/apt/archives/libc6_2.11.1-0ubuntu7.8_amd64.deb (--unpack):
subprocess new pre-installation script returned error exit status 12
Errors were encountered while processing:
/var/cache/apt/archives/libc6_2.11.1-0ubuntu7.8_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Кто-нибудь может сказать мне, как я могу это исправить? Благодарю.
1 ответ
В руководстве, с которым вы связаны, есть опечатки.
Начальные шаги должны быть:
sudo apt-get update
sudo apt-get install build-essential zlib1g zlib1g-dev libxml2 libxml2-dev libxslt-dev
sudo apt-get install git-core
sudo apt-get install curl wget
Я также удалил -y пометьте и поставьте перед командами префикс sudo, чтобы вы могли (и, вероятно, должны) запускать их с обычным пользователем (не root).
Я не вижу команду, которую вы упоминаете, apt-get -f installв любом месте на этой странице. Необходимость использовать это обычно означает, что что-то уже сломано. Возможно, вам следует начать заново с самого начала, убедившись, что каждый шаг завершен.
Тем не менее, я не думаю, что вам нужно делать что-либо из этого.
Пакет Ubuntu ruby1.9.1 фактически предоставляет Ruby 1.9.2.
Если вы посмотрите на детали в выводе `apt-cache show ruby1.9.1, вы обнаружите, что версия, представленная в Ubuntu, на самом деле 1.9.2.
Он указан как 1.9.1, поскольку сопровождающий Debian намеревается описать версию двоичной совместимости (1.9.1) вместо версии программного обеспечения Ruby (1.9.2) .
Смотрите эту запись в списке ошибок Debian для получения дополнительной информации.
Вот несколько фрагментов apt-cache show ruby1.9.1 выход:
Package: ruby1.9.1
Version: 1.9.2.0-1
Filename: pool/universe/r/ruby1.9.1/ruby1.9.1_1.9.2.0-1_i386.deb
[...]
Description: Interpreter of object-oriented scripting language Ruby 1.9.2
Ruby is the interpreted scripting language for quick and easy
object-oriented programming. [...]
This package provides version 1.9.2 series of Ruby, which is binary-compatible
with the 1.9.1 branch.