libc-dev 설치에 문제가 있습니다

libc-dev 설치에 문제가 있습니다

Ubuntu에서 C 프로그램을 컴파일하려고 하면 다음 오류가 발생합니다.

$ gcc aa.c
aa.c:1:9: fatal error: stdio.h: No such file or directory
 #include<stdio.h>
         ^--------
compilation terminated.

설치를 시도했는데 libc6-dev다음과 같은 결과가 나왔습니다.

$ sudo apt-get install libc6-dev
...
The following packages have unmet dependencies:
 libc6-dev : Depends: libc6 (= 2.27-3ubuntu1) but 2.29-10 is to be installed
             Depends: libc-dev-bin (= 2.27-3ubuntu1)
E: Unable to correct problelms, you have held broken packages.

시도했지만 sudo dpkg --configure -a출력이 없습니다.

그리고

sudo apt-get install -f

그리고

sudo apt-get clean && sudo apt-get update

그리고

sudo apt-get upgrade

그리고

sudo apt-get dist-upgrade

위의 4개 코드는 동일한 출력을 제공합니다.

0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

이 명령을 모두 사용한 후 컴파일할 때 동일한 치명적인 오류가 발생합니다.

apt policy libc6-dev libc6

산출:

libc6-dev:
  Installed: (none)
  Candidate: 2.27-3ubuntu1
  Version table:
     2.27-3ubuntu1 500
        500 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
libc6:
  Installed: 2.29-10
  Candidate: 2.29-10
  Version table:
 *** 2.29-10 100
        100 /var/lib/dpkg/status
     2.27-3ubuntu1 500
        500 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 Packages

답변1

libc6어떻게든 Ubuntu 버전 대신 현재 Debian 베타 버전을 사용하게 됩니다 . 아마도 여기에는 이유가 있을 것이므로 변경하면 문제가 발생할 수 있습니다.

이 시점에서는 두 가지 옵션이 있습니다.

  • libc6Ubuntu 버전으로 다운그레이드 :

    sudo apt install libc6=2.27-3ubuntu1
    

    또한 관련 패키지를 다운그레이드해야 합니다( apt어떤 패키지인지 알려줄 것이지만 적어도 libc-bin및 가 있다고 가정합니다 locales).

    또는

  • Debian 테스트 libc6-dev패키지를 설치합니다:

    wget http://ftp.fr.debian.org/debian/pool/main/g/glibc/libc6-dev_2.29-10_amd64.deb http://ftp.fr.debian.org/debian/pool/main/g/glibc/libc6-dev-bin_2.29-10_amd64.deb
    sudo apt install ./libc6-dev_2.29-10_amd64.deb ./libc6-dev-bin_2.29-10_amd64.deb
    

다음 distro 업그레이드를 더 쉽게 하기 위해서만 Ubuntu 버전으로 되돌리는 것이 좋습니다. 그러나 이로 인해 더 즉각적인 다른 결과가 발생할 수 있습니다.

관련 정보