>

내 리눅스 머신은 x86_64-redhat-linux입니다.

그러나이 기계에서 다른 무기 툴 체인aarch64-linux-gnu-gcc를 사용하여 빌드합니다 (내가 빌드 한 것을 실행할 필요가 없습니다) 기계, 그냥 빌드, 그래서 팔 도구 체인을 사용하여 빌드하는 것이 좋습니다)

다음 오류가 발생합니다 :

aarch64-linux-gnu-gcc: /lib64/libc.so.6: 
version `GLIBC_2.14' not found (required by aarch64-linux-gnu-gcc)

현재 기본 공유 라이브러리 경로는 /lib64/libc.so.6을 가리 키므로이 컴퓨터의 유일한 사용자가 아니기 때문에 어떻게 업데이트하고 싶지는 않습니다. 어떻게하면 내 자신의 libc.so를 사용할 수 있습니까? 6, 검색 경로를 다른 디렉토리로 리디렉션 할 수 있습니까?

  • 답변 # 1

    문제

    GLIBC 2.12가 설치되어 있고 OP의 제목에 따라 그가 사용하려는 크로스 컴파일 툴체인은필요합니다GLIBC>2.14. OP는 시스템을 업데이트 할 수 없기 때문에 제약이 있다고 말합니다.

    주의 사항

    3 단계에서 아래 목록은 changeroot를 빌드하는 데 사용됩니다. 가능하면 배포 저장소에 포함 된 패키지를 사용하십시오. 저장소의 최신 버전이 changeroot 외부에 설치된 버전과 동일한 경우 3 단계를 중지하고 RPMFind와 같은 온라인 패키지 검색을 사용하여 최신 버전을 찾아 계속하십시오.changroot 외부에 최신 또는 온라인 버전을 설치하지 마십시오. 이로 인해 시스템이 손상 될 수 있습니다.

    솔루션

    GLIBC 버전을 나란히 설치할 수 없으므로 OP는 이제 ARM 크로스 컴파일러를 설치하기 위해 changeroot jail을 빌드해야합니다. Wikipedia-Chroot도 참조하십시오. 이렇게하려면 다음 단계를 따르십시오.

    <올>

    변경 루트에 대한 디렉토리를 작성하십시오. mkdir -pv $HOME/newroot

    chroot에 설치하기 위해 RPM 패키지를 재지 정하는 대체를 작성하십시오. export ROOT=$HOME/newroot && echo $ROOT . 궁금한 경우 4 단계를 참조하십시오.

    곧 새로운 변수가 중요해 지므로 새 변수를 에코하십시오.

    변경 루트에 권장되는 rpm 패키지를 다운로드하십시오 (이 패키지 이름은 다음과 같습니다) : cd $ROOT && mkdir -v download && cd download  

    설정

    파일 시스템

    기본 시스템

    ldconfig

    glibc<-여기서 위의 경고에 유의하십시오. 그렇지 않으면이 작업을 수행하지 않아도됩니다.

    mktemp

    termcap

    안녕하세요

    정보

    fileutils

    bash&&libtermcap

    gdbm

    tcsh

    chkconfig

    textutils

    cracklib

    cracklib-dicts

    pwdb

    glib

    개 크리

    pam --nodeps

    그림자 유틸리티

    속어

    util-linux --nodeps

    sh-utils

    zsh

    sed

    bzip2

    popt

    zlib

    rpm

    당신의 크로스 컴파일 툴체인과 그 의존성

    위의 목록 rpm -i --root=$ROOT packagename 를 설치하려면 다음 명령을 사용하십시오   --root 에 주목  논의. 이것은 RPM의 기본 설치 동작을 무시합니다. bash&&libtermcap과 같이 추가로 목록에있는 패키지를 참고하십시오. --root 를 포함하여 목록에 기록 된대로 rpm -i 명령을 실행하십시오.  논의. 위의 예에서 libtermcap은 bash와 동일한 디렉토리에 설치됩니다.

    마지막으로, chroot $ROOT && export PS1="(chroot) $PS1" .

    참조

    RedHat Linux 6.2를 사용하여 chroot 환경을 설정하는 방법-FTP 및 웹 서비스에서 위의 단계

  • 이전 binary - LFS에서/tools를 삭제할 때 발생할 수있는 문제
  • 다음 Debian Jessie의 u-boot-sunxi-with-splbin을 사용할 때 /etc/fw_envconfig에 무엇을 넣습니까?