«Google-chrome-stable зависит от libstdc ++ 6 (> = 4.8.0); однако: версия libstdc ++ 6 в системе - 4.6.3-1ubuntu5 ».

Я пытаюсь установить google-chrome-stable на свежую установку Ubuntu 12.04. Я запускаю следующие команды

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome*.deb

Я получаю следующие ошибки

dpkg: dependency problems prevent configuration of google-chrome-stable:
 google-chrome-stable depends on libstdc++6 (>= 4.8.0); however:
Version of libstdc++6 on system is 4.6.3-1ubuntu5.
 google-chrome-stable depends on lsb-base (>= 4.1); however:
Version of lsb-base on system is 4.0-0ubuntu20.3.
dpkg: error processing google-chrome-stable (--install):
 dependency problems - leaving unconfigured
Processing triggers for man-db ...
Processing triggers for bamfdaemon ...
Rebuilding /usr/share/applications/bamf.index...
Processing triggers for desktop-file-utils ...
Processing triggers for gnome-menus ...
Errors were encountered while processing:
 google-chrome-stable

Когда я запускаю sudo apt-get install -f, я просто удалил google-chrome-stable:

The following packages will be REMOVED
  google-chrome-stable

Если я ищу необходимые версии, например, Я пытаюсь sudo apt-get install libstdc++6=4.8.0 Я не могу найти версию:

E: Version ‘4.8.0’ for ‘libstdc++6’ was not found

Как это исправить?

Я знаю, что больше нет поддержки 32-битной версии Ubuntu 12.04. Я использую 64-битную версию Ubuntu.

9
задан 28 June 2016 в 22:23

6 ответов

Вы получаете эти ошибки, потому что Google прекратил поддержку Ubuntu 12.04.

Google: мы прекратим поддержку Google Chrome в 32-битном Linux, Ubuntu Precise (12.04).

Вы также можете установить chromium-browser, на котором построен Google Chrome.

Вы также можете установить Ubuntu 14.04 LTS или Ubuntu 15.10 - оба поддерживаются - для использования Chrome.

Но я предлагаю вам подождать до 21 апреля, когда выйдет новая Ubuntu 16.04 LTS.

Вы должны учитывать, что Ubuntu 12.04 LTS остается только один год официальной поддержки безопасности.

0
ответ дан 28 June 2016 в 22:23

Не думаю, что ты можешь. Они только что обновились, и зависимости не могут быть выполнены в 12.04 .

У меня была та же проблема с билдом Трэвиса, и я понизил его. Нагрузки старых версий здесь .

Очевидно, что не очень хороший ответ, я долго искал и не мог найти выход без понижения.

0
ответ дан 28 June 2016 в 22:23

Я не могу комментировать непосредственно ответ Glutanimate, но я хотел бы поделиться им в любом случае. Мне нужно было добавить дополнительную строку в скрипт установки:

perl -pe  's|libnspr4 \(\>\= 2\:4\.9\-2\~\)|libnspr4 \(\>\= 4\.12\)|g' "$buildDir/DEBIAN/control.1" > "$buildDir/DEBIAN/control"

Chrome, кажется, работает нормально с этим, но это не позволило бы мне установить его иначе.

0
ответ дан 28 June 2016 в 22:23
dpkg: dependency problems prevent configuration of google-chrome-stable:
 google-chrome-stable depends on libstdc++6 (>= 4.8.0); however:
Version of libstdc++6 on system is 4.6.3-1ubuntu5.
 google-chrome-stable depends on lsb-base (>= 4.1); however:
Version of lsb-base on system is 4.0-0ubuntu20.3.

В основном, Google Chrome просит lsb-основу и libstdc ++ 6, которые не доступны в Точном:

>lsb-base   | 4.0-0ubuntu20          | precise         | all
>lsb-base   | 4.0-0ubuntu20.3        | precise-updates | all
 lsb-base   | 4.1+Debian11ubuntu6    | trusty          | all
 lsb-base   | 4.1+Debian11ubuntu6.1  | trusty-proposed | all
 lsb-base   | 4.1+Debian11ubuntu8    | vivid           | all
 lsb-base   | 4.1+Debian11ubuntu8    | wily            | all
 lsb-base   | 9.20160110             | xenial          | all
>libstdc++6 | 4.6.3-1ubuntu5         | precise         | amd64, armel, armhf, i386, powerpc
 libstdc++6 | 4.8.2-19ubuntu1        | trusty          | amd64, arm64, armhf, i386, powerpc, ppc64el
 libstdc++6 | 4.8.4-2ubuntu1~14.04.1 | trusty-updates  | amd64, arm64, armhf, i386, powerpc, ppc64el
 libstdc++6 | 4.9.2-10ubuntu13       | vivid           | amd64, arm64, armhf, i386, powerpc, ppc64el
 libstdc++6 | 5.2.1-22ubuntu2        | wily            | amd64, arm64, armhf, i386, powerpc, ppc64el
 libstdc++6 | 5.3.1-14ubuntu2        | xenial          | amd64, arm64, armhf, i386, powerpc, ppc64el, s390x

Вам был бы нужен Надежный человек (который является также LTS) или позже устанавливать Google Chrome от Google или просто устанавливать тот, обеспеченный браузером хрома репозиториев Ubuntu.

1
ответ дан 29 June 2016 в 08:23
  • 1
    Я попробовал и теперь моя строка меню diappeared полностью. Какие-либо предложения? – Tsf 30 August 2017 в 02:39

Последнее редактирование (2017-09-13):

Это решение больше не работает на выпуски Chrome 60 и. Последние пакеты зависят от libc6 ≥ 2.17, который не может быть установлен на Ubuntu 12.04. Если Вы все еще используете Точный, необходимо или рассмотреть обновление (как, я сделал), или если Вы не можете сделать этого все еще, переключиться на другой браузер (хотя в этой точке Вы вряд ли найдете любого, которые все еще сохраняются).


Редактирование (2016-12-06): Похож на Chrome, также зависит от обновленной версии libfontconfig1 теперь (≥ 2.9.0). Я обновил сценарий соответственно. Новая версия, кажется, хорошо работает до сих пор, но обратите внимание на то, что с каждой притворной зависимостью можно ожидать, что приложение станет менее стабильным.

Редактирование (2017-06-10): Chrome 59 идет с новыми зависимостями (libfontconfig1 ≥ 2.11, libpango, и libpangocairo). Я обновил сценарий для удаления их. Тот же протест относительно устойчивости Chrome применяется снова.


Обходное решение для зависимости выходит на Ubuntu 12.04 64bit

Официальная поддержка Chrome версии 12.04 Ubuntu закончилась, но это не означает, что необходимо отказаться от Chrome просто все же. То, что следует, является быстрым учебным руководством о том, как установить последний выпуск Chrome (с 28.06.2016) на 64-разрядной Ubuntu 12.04.

Предупреждение: Это очень hackish решение, которое могло бы прекратить работать в любом моменте времени. Удостоверьтесь, что Вы знаете то, что Вы делаете перед продолжением.

Предпосылки

Обновленное ядро

Важный: Обратите внимание на то, что обновление Вашего ядра могло бы идти со своим собственным набором проблем аппаратной совместимости и проблем. Удостоверьтесь, что Вы знаете, как переключиться на более раннее ядро перед продолжением этого шага.

Недавние выпуски Chrome зависят в ряде функций ядра, связанных с игрой в песочнице, которые не доступны в ядре значения по умолчанию Ubuntu 12.04's (3.2.0). При установке Ubuntu 12.04 с помощью более свежего изображения (доработанная версия 12.04.2 и), возможности состоят в том, что Вы уже щеголяете обновленным ядром; но если Вы находитесь все еще на исходном выпуске ядра, можно обновить к стопке ядра Ubuntu 14.04's через аппаратный пакет стопки реализации возможностей LTS:

sudo apt-get install --install-recommends linux-generic-lts-trusty

Удостоверьтесь, что перезагрузили свою систему после выполнения обновления ядра. Если бы все подходило, то Ваша система должна теперь использовать ядро Linux 3.13. X.

Проблемы зависимости

При рассмотрении сообщения об ошибке, Вы получаете при попытке установить недавнюю сборку Chrome, Вы будете видеть две отличных проблемы зависимости:

  1. libstdc++6 (>= 4.8.0): Это - стандарт GNU библиотека C++. Выпуски 50. X Chrome и зависят от версии 4.8.0 этой библиотеки, но Ubuntu 12.04 только идет 4.6.3 по умолчанию.
  2. lsb-base (>= 4.1): Это - Стандарт Linux Основной пакет. Это указывает на соответствие распределения ряду норм, установленных Основой Linux. Выпуски 50. X Chrome + требуют, чтобы соответствие стандартам, определенным в LSB, базировалось 4.1, но Ubuntu 12.04 только совместима с 4,0.

Как оказалось, обе из этих проблем могут быть устранены скорее легко:

libstdc ++ 6 (> = 4.8.0)

Важный: libstdc ++ 6 является важной системной библиотекой, от которой зависят много различных пакетов. Обновление этого пакета к более новому выпуску могло бы быть опасным и могло бы привести к системным проблемам устойчивости. Я не испытал проблем сам об этих двух системах, я выполнил это обновление на, но - как всегда - Ваш пробег мог бы варьироваться.

К счастью, для нас, libstdc++6 4.8. X доступно в официальных тестовых сборках набора инструментальных средств Ubuntu PPA. Как первый шаг мы добавим этот PPA к нашим источникам программного обеспечения:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update

Установка Google Chrome с этого момента вытянет libstdc++6 зависимость от PPA, устраняя первую проблему зависимости. С решенным, давайте продолжим двигаться к второму выпуску.

lsb-основа (> = 4.1)

Оказывается, что мы не должны на самом деле устанавливать обновленную версию этого пакета для получения последних версий выполнения Chrome. На данный момент Chrome, кажется, на самом деле не зависит ни от одного из измененных стандартов в основе LSB 4.1, таким образом, зависимость от lsb-base (>= 4.1) кажется, мягкая зависимость, которую мы можем просто удалить.

Вы могли сделать это вручную, конечно, но я записал сценарий, который заботится о большинстве следующих шагов для Вас.

Сценарий установки

#!/bin/bash

# Name:         Chrome installer for Ubuntu 12.04 LTS 64-bit
# Author:       (c) 2016-2017 Glutanimate
# License:      GNU GPLv3
# Manual:       http://askubuntu.com/a/792442/

# Description:
#
# Downloads latest chrome release and makes it compatible with 12.04.
#
# This is a hack that will likely stop working at some point,
# but for those of us who can't upgrade Ubuntu just yet
# it's better than running a completely obsolete Chrome release.

set -e

tmpDir=$(mktemp -d /tmp/deb.XXXXXXXXXX)
debUrl="https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb"
debFile="$tmpDir/chrome.deb"

cleanup () {
  [[ -n "$tmpDir" ]] && [[ -d "$tmpDir" ]] && rm -r "$tmpDir"
}

trap "cleanup" EXIT

echo "Downloading latest Chrome release..."
mkdir -p "$tmpDir/build"
buildDir="$tmpDir/build"
wget "$debUrl" -O "$tmpDir/chrome.deb" || exit 1
echo "Extracting original deb file..."
dpkg-deb -x "$debFile" "$buildDir"
dpkg-deb --control "$debFile"  "$buildDir/DEBIAN"
echo "Updating dependencies..."
perl -pe  's|lsb-base \(\>\= 4\.1\)|lsb-base \(\>\= 4\.0\)|g' "$buildDir/DEBIAN/control" > "$buildDir/DEBIAN/control.1"
perl -pe  's|libfontconfig1 \(\>\= 2\.11\)|libfontconfig1 \(\>\= 2\.8\.0\)|g' "$buildDir/DEBIAN/control.1" > "$buildDir/DEBIAN/control"
perl -pe  's|libpango-1\.0-0 \(\>\= 1\.14\.0\), libpangocairo-1\.0-0 \(\>\= 1\.14\.0\), ||g' "$buildDir/DEBIAN/control" > "$buildDir/DEBIAN/control.1"
mv "$buildDir/DEBIAN/control.1" "$buildDir/DEBIAN/control"
echo "Building new deb file..."
dpkg -b "$buildDir" "$tmpDir/chrome_modified.deb"
echo "Installing new Chrome version. Please enter your password:"
sudo dpkg -i "$tmpDir/chrome_modified.deb"

Скопируйте сценарий выше, сохраните его как install_chrome.sh и отметьте его как исполняемый файл (любой через chmod +x install_chrome.sh или диалоговое окно свойств Вашего файлового менеджера).

Сделав это можно выполнить использование сценария:

./install_chrome.sh

Сценарий продолжит загружать последний стабильный выпуск Chrome, изменять его, чтобы удалить зависимость от lsb-основы 4.1 и предложить Вам устанавливать обновленный .deb файл через dpkg.

Поздравления, Вы теперь используете обновленный выпуск Google Chrome на Ubuntu 12.04!

Обновления

Для обновления Chrome просто запускает скрипт снова.

Будущая совместимость

Важный: Поскольку это решение могло бы прекратить работать в любое время, я буду советовать Вам всегда сохранять последнюю измененную работу .deb файл как резервное копирование в случае, если Chrome внезапно отказывается запускаться из-за обновления.

Для сохранения последнего измененного установщика просто направляются во временный каталог сценария прямо после получения sudo подсказка пароля при запущении скрипта (т.е. прямо прежде, чем установить измененный .deb файл). Временный каталог должен быть расположен где-нибудь под /tmp/deb.XXXXXXXXX (где XXXXXXXXX случайная строка).

6
ответ дан 29 June 2016 в 08:23

Как Google остановили поддержку Chrome и 12.04, Ваше лучшее решение состоит в том, чтобы установить Хром вместо этого:

wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo apt-get update
sudo apt-get install chromium-browser
2
ответ дан 29 June 2016 в 08:23
  • 1
    У меня была та же проблема, и это управляет, решил его! – Mahmoud S. Marwad 29 August 2017 в 08:36

Другие вопросы по тегам:

Похожие вопросы: