Software-Installation

無法安裝語言環境

  • April 6, 2019

我在 Raspbian(用於 RaspberryPi)下工作:

Linux 版本 3.18.14-v7+ (root@vagrant-ubuntu-trusty-32) (gcc 版本 4.8.3 20140106 (prerelease) (crosstool-NG linaro-1.13.1-4.8-2014.01 - Linaro GCC 2013.11))

注意:我正在使用 ssh 會話從筆記型電腦連接到 pi。

在這裡嘗試解決此問題時: 如何修復 perl:警告:設置本地失敗

我跑

sudo dpkg-reconfigure locales

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
       LANGUAGE = "en_US.UTF-8",
       LC_ALL = "en_US.UTF-8",
       LC_PAPER = "fr_FR.UTF-8",
       LC_ADDRESS = "fr_FR.UTF-8",
       LC_MONETARY = "fr_FR.UTF-8",
       LC_NUMERIC = "fr_FR.UTF-8",
       LC_TELEPHONE = "fr_FR.UTF-8",
       LC_IDENTIFICATION = "fr_FR.UTF-8",
       LC_MEASUREMENT = "fr_FR.UTF-8",
       LC_TIME = "fr_FR.UTF-8",
       LC_NAME = "fr_FR.UTF-8",
       LANG = "en_US.UTF-8"
   are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
dpkg-query: package 'locales' is not installed and no information is available
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.
/usr/sbin/dpkg-reconfigure: locales is not installed

未安裝語言環境,因此我執行此命令來安裝語言環境

sudo apt-get install locales

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:
apache2-mpm-prefork : Depends: apache2.2-bin (= 2.2.22-13+deb7u5) but it is not going to be installed
apache2.2-common : Depends: apache2.2-bin (= 2.2.22-13+deb7u5) but it is not going to be installed
                   Depends: apache2-utils but it is not going to be installed
                   Depends: procps but it is not going to be installed
                   Depends: perl but it is not going to be installed
                   Recommends: ssl-cert but it is not going to be installed
libbz2-1.0 : PreDepends: multiarch-support but it is not going to be installed
libc6 : Breaks: locales (< 2.19)
libcomerr2 : PreDepends: multiarch-support but it is not going to be installed
libdb5.1 : PreDepends: multiarch-support but it is not going to be installed
libgcc1 : PreDepends: multiarch-support but it is not going to be installed
libgssapi-krb5-2 : Depends: libkeyutils1 (>= 1.4) but it is not going to be installed
                   Depends: libkrb5support0 (>= 1.12~alpha1+dfsg) but it is not going to be installed
                   PreDepends: multiarch-support but it is not going to be installed
libk5crypto3 : Depends: libkeyutils1 (>= 1.4) but it is not going to be installed
               Depends: libkrb5support0 (>= 1.12~alpha1+dfsg) but it is not going to be installed
               PreDepends: multiarch-support but it is not going to be installed
libkrb5-3 : Depends: libkeyutils1 (>= 1.5.9) but it is not going to be installed
            Depends: libkrb5support0 (= 1.12.1+dfsg-19) but it is not going to be installed
            PreDepends: multiarch-support but it is not going to be installed
libmagic1 : PreDepends: multiarch-support but it is not going to be installed
libpcre3 : PreDepends: multiarch-support but it is not going to be installed
libssl1.0.0 : Depends: debconf (>= 0.5) but it is not going to be installed or
                       debconf-2.0
              PreDepends: multiarch-support but it is not going to be installed
libxml2 : Depends: liblzma5 (>= 5.1.1alpha+20120614) but it is not going to be installed
          PreDepends: multiarch-support but it is not going to be installed
          Recommends: xml-core but it is not going to be installed
locales : Depends: glibc-2.13-1
          Depends: debconf (>= 0.5) but it is not going to be installed or
                   debconf-2.0
php5-common : Depends: sed (>= 4.1.1-1) but it is not going to be installed
              Depends: psmisc (>= 22.15-1~) but it is not going to be installed
              Depends: lsof but it is not going to be installed
              PreDepends: dpkg (>= 1.16.1~) but it is not going to be installed
tzdata : Depends: debconf (>= 0.5) but it is not going to be installed or
                  debconf-2.0
ucf : Depends: debconf (>= 1.5.19) but it is not going to be installed
      Depends: coreutils (>= 5.91) but it is not going to be installed
zlib1g : PreDepends: multiarch-support but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

有什麼提示嗎?

這是我的問題的完整解決方案

  1. 安裝語言環境
sudo vim /etc/apt/sources.list
deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspbian.org/raspbian/ wheezy main contrib non-free rpi
deb http://apt.adafruit.com/raspbian/ wheezy main

將 wheezy 更改為 jessie

sudo apt-get update && sudo apt-get install locales

恢復為 wheezy(將 jessie 更改為 wheezy)

sudo apt-get update

sudo dpkg-reconfigure locales

現在如果我跑

perl

我收到以下警告

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
       LANGUAGE = (unset),
       LC_ALL = (unset),
       LC_PAPER = "fr_FR.UTF-8",
       LC_ADDRESS = "fr_FR.UTF-8",
       LC_MONETARY = "fr_FR.UTF-8",
       LC_NUMERIC = "fr_FR.UTF-8",
       LC_TELEPHONE = "fr_FR.UTF-8",
       LC_IDENTIFICATION = "fr_FR.UTF-8",
       LC_MEASUREMENT = "fr_FR.UTF-8",
       LC_TIME = "fr_FR.UTF-8",
       LC_NAME = "fr_FR.UTF-8",
       LANG = "en_US.UTF-8"
   are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
  1. 生成 fr_FR.UTF-8 和 en_US.UTF-8

須藤納米 /etc/locale.gen

取消註釋這些行:

en_US.UTF-8
fr_FR.UTF-8

最後執行

sudo locale-gen

引用自:https://unix.stackexchange.com/questions/223533