Я только что запустил новую версию Ubuntu Mate 15.10 на своем ноутбуке, и сейчас мне нужно установить «build-essential». Я запустил:
sudo apt-get install build-essential
и получил эту ошибку:
daniel@daniel-VGN-NR230FE:~$ sudo apt-get install build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
build-essential : Depends: libc6-dev but it is not going to be installed or
libc-dev
Depends: g++ (>= 4:5.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Я не знаю, имеет ли это какое-либо отношение к этому, но во время установки я пропустил некоторые пакеты, так как установка тогда заняла бы навсегда (300 минут или около того).
Перед тем, как приступить к сборке, я установил все доступные обновления через Software Updater и неполные языковые пакеты, но затем снова получил эту ошибку.
Я запустил бы путем проверки, включены ли Вы дистрибутив main
источники, Если это - 15,10 Ваших кодовых имен, должен быть wily
.
Открывают Ваш sources
файл:
$sudo gedit /etc/apt/sources.list
Ищут следующие строки и некомментарий их, сохранили файл:
###### Ubuntu Main Repos
deb http://us.archive.ubuntu.com/ubuntu/ wily main
deb-src http://us.archive.ubuntu.com/ubuntu/ wily main
###### Ubuntu Update Repos
deb http://us.archive.ubuntu.com/ubuntu/ wily-security main
deb http://us.archive.ubuntu.com/ubuntu/ wily-updates main
deb-src http://us.archive.ubuntu.com/ubuntu/ wily-security main
deb-src http://us.archive.ubuntu.com/ubuntu/ wily-updates main
источники Обновления & повторите установку:
$sudo apt-get update
sudo apt-get install build-essential
Это может быть специфично для Docker. Но можно попробовать, если у вас нормально работает. У меня возникла такая же проблема с образом докера Ubuntu 16.04. Я попытался установить libc6-dev, выдает эту ошибку:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libc6-dev : Depends: libc6 (= 2.23-0ubuntu10) but 2.23-0ubuntu11 is to be installed
E: Unable to correct problems, you have held broken packages.
Это на самом деле просит понизить версию libc6. После понижения версии:
apt-get install libc6=2.23-0ubuntu10
я наконец-то смог установить build-essential
У меня была аналогичная проблема. Я решаю ее следующим образом:
Перед началом работы, если у вас нет aptitude, вы можете установить его, следуя этим инструкциям:[документация aptitude] [1]
Если он у вас уже есть, можете двигаться дальше. Сначала вам нужно запустить:
sudo aptitude install g++
Accept this solution? [Y/n/q/?]
Вы должны выбрать n
.
Вам будет предложено понизить версию пакета и будет задано следующее:
Accept this solution? [Y/n/q/?]
На этот раз выберите Y
.
Это приведет к понижению версии пакета. После этого вы можете установить build-essential следующим образом:
sudo aptitude -f install build-essential
Accept this solution? [Y/n/q/?]
Вы должны выбрать Y
.
Он установит его. После того, как это будет сделано, вы можете запустить эту команду, чтобы проверить это:
sudo aptitude search build-essential
если вы видите эту строку в результате:
> i build-essential - Informational list of build-essential pack
это означает, что установка прошла успешно, но если вы ее не видите, вам нужно искать другое решение, чтобы решить эту проблему. [1]: https://doc.ubuntu-fr.org/aptitude