Giải quyết các vấn đề về phiên bản multilib


18

Tôi sử dụng Centos 6.4

Khi tôi cố gắng cài đặt libgcc với yum install libgcc.i686tôi đã thực hiện mát xa.

Error:  Multilib version problems found. This often means that the root
       cause is something else and multilib version checking is just
       pointing out that there is a problem. Eg.:

         1. You have an upgrade for libgcc which is missing some
            dependency that another package requires. Yum is trying to
            solve this by installing an older version of libgcc of the
            different architecture. If you exclude the bad architecture
            yum will tell you what the root cause is (which package
            requires what). You can try redoing the upgrade with
            --exclude libgcc.otherarch ... this should give you an error
            message showing the root cause of the problem.

         2. You have multiple architectures of libgcc installed, but
            yum can only see an upgrade for one of those arcitectures.
            If you don't want/need both architectures anymore then you
            can remove the one with the missing update and everything
            will work.

         3. You have duplicate versions of libgcc installed already.
            You can use "yum check" to get yum show these errors.

       ...you can also use --setopt=protected_multilib=false to remove
       this checking, however this is almost never the correct thing to
       do as something else is very likely to go wrong (often causing
       much more problems).

       Protected multilib versions: libgcc-4.4.7-4.el6.i686 != libgcc-4.4.7-3.el6.x86_64
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles –nodigest

Làm cách nào tôi có thể cài đặt libgcc.i686?

Câu trả lời:


16

Có vẻ như bạn libgcc.x86_64có một phiên bản khác với phiên bản libgcc.i686bạn đang cố gắng cài đặt ( 4.4.7-3so với 4.4.7-4). Hãy thử cập nhật lib x86_64 cùng với việc cài đặt i686-lib:

yum install libgcc.x86_64 libgcc.i686

Tôi báo cáo tôi có thể cài đặt libgcc.i686 với yum install libgcc.x86_64 libgcc.i686.
dùng1345414

4

Tôi đã đánh nó sau khi bị gián đoạn yum update(trong một lần chạy vô hình trong trường hợp của tôi). Sau khi đọc chủ đề này, cuối cùng tôi đã sửa nó bằng:

package-cleanup --cleandupes

Mặc dù trước đó tôi cũng đã thử chạy các lệnh như @etagenklo đề xuất và cũng đã thử:

yum-complete-transaction yum-complete-transaction --cleanup-only yum check # report generally package-cleanup --dupes # report on duplicate packages in particular


0

Tôi nghĩ rằng nó đáng để đề cập bởi vì đó là vấn đề của tôi kiểm tra

/etc/yum.repose.d/*

và kiểm tra nếu không có nguồn sử dụng hoặc không chính thức


-3

Làm thế nào chúng ta có thể sửa lỗi này?

Error:  Multilib version problems found.

Điều này thường có nghĩa là nguyên nhân gốc là một cái gì đó khác và việc kiểm tra phiên bản multilib chỉ ra rằng có vấn đề. Ví dụ.:

  1. Bạn có một bản nâng cấp cho apr thiếu một số phụ thuộc mà gói khác yêu cầu. Yum đang cố gắng giải quyết điều này bằng cách cài đặt một phiên bản cũ hơn của kiến ​​trúc khác nhau. Nếu bạn loại trừ kiến ​​trúc xấu yum sẽ cho bạn biết nguyên nhân gốc là gì (gói nào yêu cầu gì). Bạn có thể thử làm lại nâng cấp với --exclude apr.otherarch ...điều này sẽ cung cấp cho bạn một thông báo lỗi hiển thị nguyên nhân gốc của vấn đề.

  2. Bạn có nhiều kiến ​​trúc của apr được cài đặt, nhưng yum chỉ có thể thấy một bản nâng cấp cho một trong những kiến ​​trúc đó. Nếu bạn không muốn / cần cả hai kiến ​​trúc nữa thì bạn có thể xóa cái có bản cập nhật bị thiếu và mọi thứ sẽ hoạt động.

  3. Bạn đã cài đặt phiên bản trùng lặp của apr. Bạn có thể sử dụng yum checkđể có được yum hiển thị những lỗi này.

    ... Bạn cũng có thể sử dụng --setopt=protected_multilib=falseđể xóa kiểm tra này, tuy nhiên điều này gần như không bao giờ là điều chính xác phải làm vì một điều khác rất có thể xảy ra (thường gây ra nhiều vấn đề hơn).

    Error:
    Protected multilib versions: apr-1.3.9-5.el6_2.i686 != apr-1.5.2-2.x86_64
    Protected multilib versions: apr-util-1.3.9-3.el6_0.1.i686 != apr-util-1.5.4-2.x86_64
    

--setopt=protected_multilib=falseHữu ích. Cảm ơn.
Scottie H
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.