web-dev-qa-db-ja.com

ビルド必須、保留された破損パッケージをインストールできません

だから、開発用にコンピューターをセットアップしようとしていました。 Ubuntu 14.04 LTSをインストールしました。ハローワールドプログラムを書きたかった。ただし、コンパイルできません。いくつかの検索の後、私はSudo apt-get install build-essentialを試しました。

>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: g++ (>= 4:4.4.3) but it is not going to be installed
                   Depends: dpkg-dev (>= 1.13.5) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

ソースとSudo apt-get updateSudo apt-get upgradeを変更してみましたが、問題は残りました。 Sudo apt-get autocleanSudo apt-get install --fix-broken、またはそのようなものを試しましたが、どれも機能しませんでした。

また、私はSudo aptitude why-not build-essentialを試しました。

>Sudo aptitude why-not build-essential
p   gvfs-bin:i386          Provides   gvfs-bin                         
p   gvfs-bin:i386          Suggests   gvfs:i386                        
p   gvfs:i386              Suggests   gvfs-backends:i386               
p   gvfs-backends:i386     Depends    libgphoto2-port10:i386 (>= 2.5.2)
p   libgphoto2-port10:i386 Suggests   gphoto2:i386 (> 2.1.0)           
p   gphoto2:i386           Suggests   gthumb:i386                      
p   gthumb:i386            Recommends flex:i386                        
p   flex:i386              Suggests   build-essential:i386             
p   build-essential:i386   Conflicts  build-essential 

ここで何が間違っているのでしょうか?

また、私のsources.listファイル:

>cat /etc/apt/sources.list
# deb cdrom:[Ubuntu 14.04.4 LTS _Trusty Tahr_ - Release AMD64 (20160217.1)]/ trusty main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://mirrors.163.com/ubuntu/ trusty main restricted
deb-src http://mirrors.163.com/ubuntu/ trusty main restricted

## Major bug fix updates produced after the final release of the
## distribution.

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://mirrors.163.com/ubuntu/ trusty universe
deb-src http://mirrors.163.com/ubuntu/ trusty universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://mirrors.163.com/ubuntu/ trusty multiverse
deb-src http://mirrors.163.com/ubuntu/ trusty multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.


## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu trusty partner
# deb-src http://archive.canonical.com/ubuntu trusty partner

## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
deb http://extras.ubuntu.com/ubuntu trusty main
deb-src http://extras.ubuntu.com/ubuntu trusty main

sources.list.dディレクトリ:

>ls -la /etc/apt/sources.list.d
total 8
drwxr-xr-x 2 root root 4096  4月 10  2014 .
drwxr-xr-x 6 root root 4096  4月 14 14:16 ..

ところで、壊れたパッケージとは何か、なぜ簡単に表示されるのかについて簡単に説明できますか?または、考えられる理由/これが起こっている理由は何ですか? apt-getがそのような問題を修正したり、少なくともここで役立つ情報を提供したりするべきではないでしょうか?最近このエラーに何度も遭遇しましたが、解決策が見つかりませんでした。

どうもありがとう。

2
Andy Ge

しばらく苦労した後、私はこの問題の解決策を見つけました。

最初にSudo apt-get install aptitude、これは正常に動作します。次にSudo aptitude install build-essentialを試してください。最初に何か問題があると言われ、解決策が提案されます。それが提案する最初の解決策は何も変わらない、それは我々が望むものではないので、noを選択する。そして、それは機能する2番目のソリューションを提案します。

ちなみに、新しくインストールしたubuntuシステムで「壊れたパッケージを保持する」のはなぜかと混乱していますか? 「壊れたパッケージを保持する」とはどういう意味ですか?

4
Andy Ge

何らかの理由で、build-essential:i38632ビットバージョン)がインストールされており、システムは、前述のように64ビット(つまり、AMD64)です。

まず、build-essential:i386を削除します。

Sudo apt-get remove build-essential:i386

次に、64バージョンをインストールします。

Sudo apt-get install build-essential
3