GCC를 설치하면 라이브러리, 헤더 파일 및 일부 실행 파일이 /usr/lib/gcc/i686-pc-linux-gnu/4.5.4/
및 /usr/libexec/gcc/i686-pc-linux-gnu/4.5.4/
.
/bin
저는 사용자 정의 시스템에서 기본 컴파일러를 구축 중이며 실행 파일을 에 , 헤더를 에 /include/gcc
, 기타 모든 항목 /lib/gcc
(대상 시스템 이름이나 gcc 버전에 대한 경로 없이)을 넣고 싶습니다 . 불행하게도 gcc 구성 스크립트에서 사용할 수 있는 옵션을 고려하면 이는 불가능해 보입니다. 단순히 설치된 모든 파일을 재배치하는 것은 문제가 되지 않지만 gcc 실행 파일은 더 이상 이러한 파일을 찾을 수 없습니다. 내 시스템에서 검색 디렉터리는 다음과 같습니다(내 생각에는 매우 보기 흉하고 쓸모없는 경로가 많이 있습니다).
$ gcc -print-search-dirs
install: /usr/lib/gcc/i686-pc-linux-gnu/4.5.4/
programs: =/usr/libexec/gcc/i686-pc-linux-gnu/4.5.4/:/usr/libexec/gcc/i686-pc-linux-gnu/4.5.4/:/usr/libexec/gcc/i686-pc-linux-gnu/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/:/usr/lib/gcc/i686-pc-linux-gnu/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/../../../../i686-pc-linux-gnu/bin/i686-pc-linux-gnu/4.5.4/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/../../../../i686-pc-linux-gnu/bin/
libraries: =/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/../../../../i686-pc-linux-gnu/lib/i686-pc-linux-gnu/4.5.4/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/../../../../i686-pc-linux-gnu/lib/../lib/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/../../../i686-pc-linux-gnu/4.5.4/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/../../../../lib/:/lib/i686-pc-linux-gnu/4.5.4/:/lib/../lib/:/usr/lib/i686-pc-linux-gnu/4.5.4/:/usr/lib/../lib/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/../../../../i686-pc-linux-gnu/lib/:/usr/lib/gcc/i686-pc-linux-gnu/4.5.4/../../../:/lib/:/usr/lib/
나는 gcc의 소스 코드를 살펴봤지만 내가 원하는 것을 달성하려면 많은 변경이 이루어져야 한다고 생각합니다. 이러한 경로의 구조는 실제로 하드코딩되어 있습니다. 구성하기 전에 작동 DEFAULT_TARGET_MACHINE
하거나 트릭을 수행하지만 다른 작업은 확실히 중단됩니다.DEFAULT_TARGET_VERSION
gcc/Makefile.in
어떤 도움이나 아이디어라도 감사하겠습니다.
답변1
./configure 스크립트에 대해 다음 옵션을 시도해 보십시오.
--prefix=
--exec-prefix=
--bindir=
--libdir=
--libexecdir=
--with-slibdir=