Ubuntu 18.04でlibc6-dev-armhf-crossのエラーを修正するには、アップグレードを適切にしようとしますか?


22

今日、Ubuntuソフトウェアの提案に基づいてアップグレードしようとすると、次のエラーが表示されます。このエラーが表示されるのは初めてです。私の18.04システムは何ヶ月も前からうまく機能しています。

どんな助けも大歓迎です。

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu 
DISTRIB_RELEASE=18.04 
DISTRIB_CODENAME=bionic 
DISTRIB_DESCRIPTION="Ubuntu 18.04.1 LTS"



$ sudo apt upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
  libc6-armel-cross libc6-armhf-cross libc6-dev-armel-cross libc6-dev-armhf-cross
4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/5,871 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 388166 files and directories currently installed.)
Preparing to unpack .../libc6-dev-armel-cross_2.27-3ubuntu1cross1.1_all.deb ...
Unpacking libc6-dev-armel-cross (2.27-3ubuntu1cross1.1) over (2.27-3ubuntu1cross1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-dev-armel-cross_2.27-3ubuntu1cross1.1_all.deb (--unpack):
 unable to open '/usr/arm-linux-gnueabi/lib/Mcrt1.o.dpkg-new': No such file or directory
No apport report written because the error message indicates an issue on the local system
                                                                                         Preparing to unpack .../libc6-armel-cross_2.27-3ubuntu1cross1.1_all.deb ...
Unpacking libc6-armel-cross (2.27-3ubuntu1cross1.1) over (2.27-3ubuntu1cross1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-armel-cross_2.27-3ubuntu1cross1.1_all.deb (--unpack):
 unable to open '/usr/arm-linux-gnueabi/lib/ld-2.27.so.dpkg-new': No such file or directory
No apport report written because the error message indicates an issue on the local system
                                                                                         Preparing to unpack .../libc6-dev-armhf-cross_2.27-3ubuntu1cross1.1_all.deb ...
Unpacking libc6-dev-armhf-cross (2.27-3ubuntu1cross1.1) over (2.27-3ubuntu1cross1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-dev-armhf-cross_2.27-3ubuntu1cross1.1_all.deb (--unpack):
 unable to open '/usr/arm-linux-gnueabihf/lib/Mcrt1.o.dpkg-new': No such file or directory
No apport report written because the error message indicates an issue on the local system
                                                                                         Preparing to unpack .../libc6-armhf-cross_2.27-3ubuntu1cross1.1_all.deb ...
Unpacking libc6-armhf-cross (2.27-3ubuntu1cross1.1) over (2.27-3ubuntu1cross1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-armhf-cross_2.27-3ubuntu1cross1.1_all.deb (--unpack):
 unable to open '/usr/arm-linux-gnueabihf/lib/ld-2.27.so.dpkg-new': No such file or directory
No apport report written because MaxReports is reached already
                                                              Errors were encountered while processing:
 /var/cache/apt/archives/libc6-dev-armel-cross_2.27-3ubuntu1cross1.1_all.deb
 /var/cache/apt/archives/libc6-armel-cross_2.27-3ubuntu1cross1.1_all.deb
 /var/cache/apt/archives/libc6-dev-armhf-cross_2.27-3ubuntu1cross1.1_all.deb
 /var/cache/apt/archives/libc6-armhf-cross_2.27-3ubuntu1cross1.1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

ダウンロードしたパッケージに問題があるようです。sudo apt clean実行してから、アップグレードを再度実行してください。
クリストファーアイヴス

1
パッケージキャッシュをクリアしてパッケージを再ダウンロードしようとしましたが、同じ問題が発生しました。
ウリバンフローレス

回答:


16

再インストールlibc6-dev-armhf-crossしてみてください(に対しても同じことを行いますlibc6-dev-armel-cross

sudo apt remove libc6-dev-armhf-cross に続く sudo apt install libc6-dev-armhf-cross

apt install --reinstall機能しないようです)

実行sudo apt removeすると、それに依存するパッケージが削除される場合があることに注意してください。参照してくださいOlek Wojnarの答え依存パッケージを削除せずにこれを行う方法については、以下を


こんにちはWoofas、--reinstallも試しましたが、削除とインストールに違いがあるとは思いませんでした。試したところ、正しくインストールされました。ありがとう!
ウリヴァンフローレス

1
それはほとんど私のために働いた、私はこれらすべてを、その後、削除するreinstall-いたlibc6-dev-armhf-cross libc6-armel-cross libc6-dev-armel-cross libc6-armhf-cross
AT

1
gccなどの依存関係により削除される他のパッケージを再インストールする必要がある場合があります。以下の私の投稿を参照してください。
ジョンJJ

ジョンが言ったように、削除されたパッケージを説明する必要があります。それをかなりきれいに処理する方法については、私の答えをご覧ください。
オレクヴォイナー

37

Gen.Stackで使用されているアプローチのバリエーションを使用して、この問題をきれいに解決することができました。受け入れられたソリューションの問題は、問題のパッケージの依存関係を削除するが、それらの復元に失敗することです。この解決策はその問題を防ぎます。

まず、問題のあるパッケージを削除し、依存関係を削除せずに構成を削除します。

sudo dpkg -P --force-depends libc6-armel-cross libc6-armhf-cross libc6-dev-armel-cross libc6-dev-armhf-cross

パッケージキャッシュを消去します。

sudo apt clean

パッケージリストを更新します。

sudo apt update

壊れた依存関係を修正します(削除されたパッケージのうち2つを自動的にインストールする必要があります)。

sudo apt -f install

最後に、残りの2つのパッケージをインストールします。

sudo apt install libc6-dev-armel-cross libc6-dev-armhf-cross

これにより、システムが正常な状態に戻ります。


3
正常に動作します。ubuntu 14.04からubuntu 18.04へのアップグレード
ravi.zombie

3
おかげで、Ubuntu 14.04、16.04〜18.04の同じ問題も解決しました。
ミニッシュ

2
すごい。Ubuntu 16.04から18.04にアップグレードした後、パッケージマネージャーが壊れました。コマンドラインが推奨するすべてのものと、他のさまざまなソリューションをオンラインで試しました。これは完全に機能しているようです。ありがとう、Olek Wojnar !!
evanrmurphy

1
うまく機能する、うまくレイアウトされたソリューションが大好きです!ありがとう。
Whome

1

上記のapt remove / installメソッドを使用すると、依存関係により、aptが意図した以上の削除を行う場合があります。他のパッケージを再インストールする必要がある場合もあります。また、次のものも再インストールしました。

これらのいくつかはすでに自動的に再インストールされますが、削除されたパッケージのリストをコピーして、何をする必要があるかをaptに把握させる方が簡単でした。

sudo apt-get install \
  g++-7-arm-linux-gnueabihf g++-7-multilib-arm-linux-gnueabihf g++-arm-linux-gnueabihf \
  gcc-7-arm-linux-gnueabihf gcc-7-multilib-arm-linux-gnueabihf gcc-arm-linux-gnueabihf \
  libasan4-armhf-cross libasan4-dbg-armhf-cross libatomic1-armhf-cross libatomic1-dbg-armhf-cross \
  libc6-armel-armhf-cross libc6-armel-cross libc6-armhf-cross libc6-dev-armel-armhf-cross \
  libc6-dev-armel-cross libc6-dev-armhf-cross libcilkrts5-armhf-cross libcilkrts5-dbg-armhf-cross \
  libgcc-7-dev-armhf-cross libgcc1-armhf-cross libgcc1-dbg-armhf-cross libgomp1-armhf-cross \
  libgomp1-dbg-armhf-cross libsfasan4-armhf-cross libsfatomic1-armhf-cross \
  libsfcilkrts5-armhf-cross libsfgcc-7-dev-armhf-cross libsfgcc1-armhf-cross \
  libsfgomp1-armhf-cross libsfstdc++-7-dev-armhf-cross libsfstdc++6-armhf-cross \
  libsfubsan0-armhf-cross libstdc++-7-dev-armhf-cross libstdc++6-7-dbg-armhf-cross \
  libstdc++6-armhf-cross libubsan0-armhf-cross libubsan0-dbg-armhf-cross \

回答で依存関係を削除する問題を特定したことが気に入っています。残念ながら、ソリューションはこれらのパッケージをすべて手動でインストールされたものとしてマークするため、将来不要な場合は自動的に削除されません。
オレクヴォイナー

1

多くの依存関係が削除されないようにするには、次を試してくださいdpkg -P --force-depends

dpkg -P --force-depends libc6-armel-cross libc6-armhf-cross libc6-dev-armel-cross libc6-dev-armhf-cross

次に、それらのパッケージを再度更新、取得、インストールします。

apt update
[...]
apt clean
apt install libc6-armel-cross libc6-armhf-cross libc6-dev-armel-cross libc6-dev-armhf-cross
Building dependency tree       
Reading state information... Done
After this operation, 0 B of additional disk space will be used.
Get:1 http://en.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 libc6-armel-cross all 2.27-3ubuntu1cross1.1 [1,031 kB]
Get:2 http://en.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libc6-armhf-cross all 2.27-3ubuntu1cross1.1 [1,005 kB]
Get:3 http://en.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 libc6-dev-armel-cross all 2.27-3ubuntu1cross1.1 [1,936 kB]
Get:4 http://en.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libc6-dev-armhf-cross all 2.27-3ubuntu1cross1.1 [1,899 kB]
Fetched 5,871 kB in 9s (661 kB/s)                                                                                                                                                           
Selecting previously unselected package libc6-armel-cross.
(Reading database ... 760110 files and directories currently installed.)
Preparing to unpack .../libc6-armel-cross_2.27-3ubuntu1cross1.1_all.deb ...
Unpacking libc6-armel-cross (2.27-3ubuntu1cross1.1) ...
dpkg: error processing archive /var/cache/apt/archives/libc6-armel-cross_2.27-3ubuntu1cross1.1_all.deb (--unpack):
 unable to open '/usr/arm-linux-gnueabi/lib/ld-2.27.so.dpkg-new': No such file or directory
No apport report written because the error message indicates an issue on the local system
[...]

したがって、--reinstall依存関係を使用して手動で再インストールしたり、を使用して再インストールしたりすることはできませんdpkg -[P|i] --force-depends

2018-10-09:これらのパッケージはまだ壊れていますが、更新が見えないため、パッケージを(アン)インストールするためにaptを使用できるようにすべて削除しました。現状のままにするということは、パッケージをインストールまたは削除できないことを意味します。ローカルにインストールされたツールチェーンを使用して要件を満たしています。

編集:問題のあるパッケージと依存関係をすべて削除することに注意してください。


@オレク:編集のためのThx。しかし、いや、それは私にはうまくいきません。それが、私がやったように投稿を辞めた理由です。編集を行っても、この問題の解決策は提供されません。編集を元に戻しますか?THX。
Gen.Stack

お使いのマシンでは動作しなかったのは奇妙です。私はまったく同じ問題を抱えており、私の解決策はそれを修正しました。aptがどのように機能するかに基づいて、なぜそれがあなたにとってうまくいかないのか率直に混乱しています。おそらくあなたのために遊びに別の問題がありますか?いずれにせよ、私は自分の答えを作成しました。問題を解決するために頑張ってください!
オレクヴォイナー

@OlekWojnarはい、それは奇妙です。私は今のところ根本的な理由を無視しています。他のツールチェーンを手に入れたので、深く掘り下げる必要はありません。ストックツールは必要ありません。いつかこれを解決する方法がわかったら、これを更新します。thx
Gen.Stack

0

Ubuntu 18.04でシナプスパッケージマネージャーを使用して、問題のあるパッケージを削除し、後で再インストールすることでエラーを解決しました。


-1

インストールlibc6-dev-armel-cross_2.27-3ubuntu1cross1.1_all.debしてlibc6-armel-cross_2.27-3ubuntu1cross1.1_all.debパッケージ化するときに同じエラーが発生し、実行します

apt -f install 

うまくいきませんでした。libc6-dev-armel-cross_2.27-3ubuntu1cross1_all.deb and libc6-armel-cross_2.27-3ubuntu1cross1_all.debUbuntuパッケージミラーからダウンロードしてインストールします。

dpkg -i *.deb 

そしてそれは私の問題を解決しました。


Woofasが述べたように、Patrickに感謝します。aptの削除とインストールで問題は解決しました。
ウリバンフローレス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.