sudo apt-get 설치 libstdc ++


16

내가 libstdc++사용하여 설치하려고 할 때 :

sudo apt-get install libstdc++

우분투에서 아래 오류가 발생합니다. 그것에 대해 어떤 생각이 있습니까?

The following packages have unmet dependencies:
 libstdc++-4.8-doc : Conflicts: libstdc++6-4.4-doc but 4.4.7-8ubuntu1 is to be installed
                     Conflicts: libstdc++6-4.6-doc but 4.6.4-6ubuntu2 is to be installed
                     Conflicts: libstdc++6-4.7-doc but 4.7.3-12ubuntu1 is to be installed
 libstdc++-4.9-doc : Conflicts: libstdc++-4.8-doc but 4.8.5-2ubuntu1~14.04.1 is to be installed
                     Conflicts: libstdc++6-4.4-doc but 4.4.7-8ubuntu1 is to be installed
                     Conflicts: libstdc++6-4.6-doc but 4.6.4-6ubuntu2 is to be installed
                     Conflicts: libstdc++6-4.7-doc but 4.7.3-12ubuntu1 is to be installed
 libstdc++-5-doc : Conflicts: libstdc++-4.8-doc but 4.8.5-2ubuntu1~14.04.1 is to be installed
                   Conflicts: libstdc++-4.9-doc but 4.9.3-8ubuntu2~14.04 is to be installed
                   Conflicts: libstdc++6-4.4-doc but 4.4.7-8ubuntu1 is to be installed
                   Conflicts: libstdc++6-4.6-doc but 4.6.4-6ubuntu2 is to be installed
                   Conflicts: libstdc++6-4.7-doc but 4.7.3-12ubuntu1 is to be installed
 libstdc++6-4.6-dbg : Conflicts: libstdc++6-4.4-dbg but 4.4.7-8ubuntu1 is to be installed
 libstdc++6-4.6-doc : Conflicts: libstdc++6-4.4-doc but 4.4.7-8ubuntu1 is to be installed
 libstdc++6-4.7-dbg : Conflicts: libstdc++6-4.4-dbg but 4.4.7-8ubuntu1 is to be installed
                      Conflicts: libstdc++6-4.6-dbg but 4.6.4-6ubuntu2 is to be installed
 libstdc++6-4.7-doc : Conflicts: libstdc++6-4.4-doc but 4.4.7-8ubuntu1 is to be installed
                      Conflicts: libstdc++6-4.6-doc but 4.6.4-6ubuntu2 is to be installed
 libstdc++6-4.8-dbg : Conflicts: libstdc++6-4.4-dbg but 4.4.7-8ubuntu1 is to be installed
                      Conflicts: libstdc++6-4.6-dbg but 4.6.4-6ubuntu2 is to be installed
                      Conflicts: libstdc++6-4.7-dbg but 4.7.3-12ubuntu1 is to be installed
 libstdc++6-4.8-dbg-armhf-cross : Conflicts: libstdc++6-4.7-dbg-armhf-cross but 4.7.3-11ubuntu1cross1.85 is to be installed
 libstdc++6-4.9-dbg : Conflicts: libstdc++6-4.4-dbg but 4.4.7-8ubuntu1 is to be installed
                      Conflicts: libstdc++6-4.6-dbg but 4.6.4-6ubuntu2 is to be installed
                      Conflicts: libstdc++6-4.7-dbg but 4.7.3-12ubuntu1 is to be installed
                      Conflicts: libstdc++6-4.8-dbg but 4.8.5-2ubuntu1~14.04.1 is to be installed
 libstdc++6-5-dbg : Conflicts: libstdc++6-4.4-dbg but 4.4.7-8ubuntu1 is to be installed
                    Conflicts: libstdc++6-4.6-dbg but 4.6.4-6ubuntu2 is to be installed
                    Conflicts: libstdc++6-4.7-dbg but 4.7.3-12ubuntu1 is to be installed
                    Conflicts: libstdc++6-4.8-dbg but 4.8.5-2ubuntu1~14.04.1 is to be installed
                    Conflicts: libstdc++6-4.9-dbg but 4.9.3-8ubuntu2~14.04 is to be installed
E: Unable to correct problems, you have held broken packages.

최근에 ppas를 추가 했습니까?
Raphael

1
실제로 패키지라는 패키지가 없습니다 libstdc++(아마도 설치하려고 libstdc++6합니까? ++문자 때문에 apt정확히 일치하는 것을 찾지 못하면 패키지 이름을 정규식 으로 취급 하므로이 경우 이름 이있는 패키지를 설치하려고합니다 경기는 libstd하나 이상의 다음에 c당신이 볼 수 있듯이, 이는 갈등의 많은 -.
steeldriver

@steeldriver : 그것은 분명히 대답이며 imho는 주석이 아닌 대답이어야합니다 (문자열을 정규식으로 취급하지 않는 방법을 설명하는 데 도움이되지만). 대한 맨 페이지는 apt그들이 포함하는 경우 정규 표현식에 같은 패키지 이름을 치료하는 것을 말한다 ., ?또는 *언급하지 않고 +, 그래서 행동을 정확히 예상되지 않는다.
rici

답변:


12

실제로라는 패키지가 없습니다 libstdc++(아마도 설치하려고 libstdc++6합니까?)

apt가 패키지 이름과 정확히 일치하는 것을 찾지 못하면 주어진 문자열을 정규식으로 취급합니다. 이 경우 이름과 일치 하는 패키지를 하나 이상 ++설치하려고 시도합니다 .libstdc

불행히도 나는이 동작을 끄는 방법을 알아 낼 수 없었습니다. (이전에는 이스케이프 문자를 사용하여 시도한 것이 효과가없는 것 같습니다)-내가 아는 유일한 해결책은 정규 표현식 문자가있는 정확한 패키지 이름을 지정하는 것입니다. 잘못 해석되어 패키지 카탈로그가 최신인지 확인합니다.

sudo apt-get update
sudo apt-get install libstdc++6

수락해야합니다. 종료와 관련하여 패키지 이름을 감싸는 별칭 또는 함수를 작성할 수 있습니다.^PACKAGE$
phil294

11

먼저 다음 명령을 실행하십시오

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install build-essential
sudo apt-get install aptitude

그리고 시도

sudo apt-get install libstdc++6

또는이 검색 결과를 시도하고 나열된 http://packages.ubuntu.com/search?keywords=libstdc%2B%2B 에서 원하는 패키지 하나를 설치 하십시오.


2
+1 좋은 답변이지만 s에 libstdc++포함되어 있지 build-essential않습니까?
Kev Inski

7
아, 왜 설치에 aptitude사용하지 않으면 설치 libstdc++6합니까?
Kev Inski

2
답장 주셔서 감사합니다 Kev. 나는 성공하지 못한 경우에 일종의 가능성을 제시하려고 노력했다. 그리고 그의 실수를 처리하기위한 적성.
MAK Ripon

apt-get을 업데이트는 sudo apt-get을 : 오류를로드 공유 라이브러리 상태 : /usr/lib/x86_64-linux-gnu/libstdc++.so.6 : 잘못된 ELF 헤더
mvladk

3
LD_LIBRARY_PATH=/usr/local/lib64/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9 g++-4.9

6
사용자가 왜이 작업을 수행해야하며 각 명령의 기능을 설명 할 수 있습니까? (다른 사람이 귀하의 답변을 읽고 잘못된 문제에 대해 복사하여 붙여 넣기하기로 결정한 경우를 대비하여?) ;-)
Fabby
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.