checkinstall을 사용하여 소스 GCC 6.2.0에서 설치하려고 시도했지만 실패했습니다.
구성 및 확인을 실행하면 모두 괜찮아 보이지만 checkinstall을 시도하면 다음 오류가 발생합니다.
ranlib: could not create temporary file whilst writing archive: No more archived files
발생 시 기록:
make[4]: Leaving directory '/home/alexandre/Documents/objdir/libcc1'
make[3]: Leaving directory '/home/alexandre/Documents/objdir/libcc1'
make[2]: Leaving directory '/home/alexandre/Documents/objdir/libcc1'
make[2]: Entering directory '/home/alexandre/Documents/objdir/x86_64-pc-linux-gnu/libgcc'
/bin/bash /home/alexandre/Documents/objdir/../gcc-6.2.0/libgcc/../mkinstalldirs /home/alexandre/gcc-6.2.0/lib/gcc/x86_64-pc-linux-gnu/6.2.0
/usr/bin/install -c -m 644 libgcc_eh.a /home/alexandre/gcc-6.2.0/lib/gcc/x86_64-pc-linux-gnu/6.2.0/
chmod 644 /home/alexandre/gcc-6.2.0/lib/gcc/x86_64-pc-linux-gnu/6.2.0/libgcc_eh.a
ranlib /home/alexandre/gcc-6.2.0/lib/gcc/x86_64-pc-linux-gnu/6.2.0/libgcc_eh.a
ranlib: could not create temporary file whilst writing archive: No more archived files
Makefile:1112: recipe for target 'install-shared' failed
make[2]: *** [install-shared] Error 1
make[2]: Leaving directory '/home/alexandre/Documents/objdir/x86_64-pc-linux-gnu/libgcc'
Makefile:17621: recipe for target 'install-target-libgcc' failed
make[1]: *** [install-target-libgcc] Error 2
make[1]: Leaving directory '/home/alexandre/Documents/objdir'
Makefile:2323: recipe for target 'install' failed
make: *** [install] Error 2
**** Installation failed. Aborting package creation.
미리 감사드립니다.
답변1
이는 알려진 문제입니다. 때때로 checkinstall은 폴더 누락으로 인해 설치를 중단합니다. 또한 (일부 버그의 경우) 새 폴더를 만드는 데 필요한 권한이 있음에도 불구하고 새 폴더 만들기를 거부합니다. 이 경우 해야 할 일은 폴더를 수동으로 생성하는 것뿐입니다. 이 경우 폴더를 만듭니다./home/alexandre/gcc-6.2.0/lib/gcc/x86_64-pc-linux-gnu/6.2.0
권한을 수동으로 설정하세요.
sudo mkdir /home/alexandre/gcc-6.2.0/lib/gcc/x86_64-pc-linux-gnu/6.2.0
sudo chmod 644 /home/alexandre/gcc-6.2.0/lib/gcc/x86_64-pc-linux-gnu/6.2.0
또 다른 가능성은 설치하기 전에 구성 단계를 놓쳤을 수도 있다는 것입니다. 다음으로 구성해 보세요.
./configure --disable-static
, 다시 컴파일하고 checkinstall을 사용하여 설치합니다.