2012-10-18 2 views
0

저는 리눅스 지식을 배우고 있습니다. binutils 또는 gcc를 컴파일하고 설치하면 항상 두 위치에 나타납니다.binutils 또는 gcc가 두 위치에 설치되는 이유는 무엇입니까?

나는 이유가 있어야하고 나는 왜 그런지 생각하지 않는다고 생각 하는가?

사실 저는 lfs를 배우고 있습니다. 내가 바이너리 유틸리티의 통과 I를 컴파일 할 때,이 책의 지침은 다음과 같습니다

../binutils-2.22/configure  \ 
    --prefix=/tools   \ 
    --with-sysroot=$LFS  \ 
    --with-lib-path=/tools/lib \ 
    --target=$LFS_TGT   \ 
    --disable-nls    \ 
    --disable-werror 

내가 & & make installmake,이 두 위치에 설치 한 후 : /tools/bin/tools/$LFS_TGT/bin.

나는 그 일을하는 이유와 이유를 원합니다.

+0

어떤 위치를 말하고 있습니까? 'gcc' 나'binutils '를 설정할 때 기본 접두어는'/ usr/local /'이지만 대부분의 리눅스는 설치된'gcc'의 접두사로'/ usr /'을 사용하기 때문에 시스템 바이너리는'/ usr/bin// gcc'하지만 수동으로 컴파일 된'gcc' 빌드 트리는'/ usr/local/bin/gcc'에 넣습니다. –

답변

1

기본적으로 /tools/$LFS_TGT/bin에있는 이진 파일은 해당 특정 파일 용으로 특별히 제작 된 도구 버전입니다. $LFS_TGT. 도구는 --with-sysroot 옵션을 사용하여 이미 수행 했으므로 이미 존재하는 도구를 대체하기 때문에이 두 번째 사본은 /tools/$LFS_TGT에 저장됩니다.