(이것은 Qt
4.7.3 이상의 버전에서 작동합니다.) Qt
Debian 컴퓨터에서 사용자 정의 매개변수를 사용하여 빌드를 시도했지만 실제로 컴파일하는 데 오랜 시간이 걸렸습니다(단일 코어 CPU에서 IIRC가 6시간 이상). 그렇기 때문에 나는 그 과정에서 어리석은 실수를 저지르지 않도록 하고 싶습니다. 그러나 성공적으로 연결한 후에는 파일과 기타 콘텐츠를 정리하기로 선택했습니다 make clean
. *.o
이것은 나쁜 생각인 것 같습니다! 그 후에 한 번 해봤 make install
더니 믿기지 않으실 테니까 make clean
.모든 것정리 과정 후 다시 컴파일하세요! 지금까지는 make clean
대상 파일과 관련 항목을 모두 삭제하더라도 새로 설치가 가능할 것이라고 생각했습니다 . 분명히 그것으로 Qt
상황이 다릅니다.
공식 문서에서 Qt 4.7
(참조http://qt-project.org/doc/qt-4.7/install-x11.html), 그들은 언급조차 하지 않았습니다임의로 선택할 수 있는 make clean
명령의 순서를 따르십시오. 지금 내가 아는 한, 여기에는 타당한 이유가 있습니다. 그럼에도 불구하고 저는 이것을 "표준 준수"라고 부를 수 없습니다. 수백 개의 오픈 소스 애플리케이션을 컴파일했고 make clean
재컴파일 프로세스를 트리거한 적이 없으며 보존되어야 하는 어떤 것도 제거하지 않았기 때문입니다(버그가 없는 한).
답변1
make clean
a 이전에 a를 하는 것이 make install
해야 할 일이라는 생각을 어디서 얻었는지 모르겠습니다 .
자동 도구의 사양 INSTALL
문서에는 프로세스가 자세히 설명되어 있습니다.
./configure
make
make check
(임의로 선택할 수 있는)make install
make installcheck
(임의로 선택할 수 있는)
항목 6에는 다음과 같이 나와 있습니다.
당신은 삭제할 수 있습니다프로그램 바이너리. 및 소스 코드 디렉토리의 개체 파일을 입력합니다
make clean
.
(강조합니다.)
make clean
이는 깨끗한 빌드를 얻고 이전 실행에서 남은 부산물이 없는지 확인하기 위해 다시 컴파일하기 전에 수행하는 작업입니다. 할 수 있어요뒤쪽에a make install
일부 공간을 확보하고 소스 코드와 구성을 유지하려는 경우. 당신은해야아니요설치하기 전에 이 작업을 수행하십시오.
답변2
Qt 빌드 스크립트는 다음과 같이 작동합니다.
1 First build qmake
2 Generate Makefile for a subprojects (*.pro)
3 Start building libaries, then examples and demo projects
예, make clean은 Qt에서 생성된 구성 파일을 제외한 모든 항목을 지웁니다.
내 비결은 상위 *.pro 파일에서 "데모"와 "예제"를 제거하는 것이었습니다. 이로 인해 약 40%의 시간이 절약되었습니다(i5 CPU 기준).
어쨌든 컴파일 속도를 높이기 위해 ccache를 설정할 수 있지만 버퍼링을 위해 약 2G 이상의 디스크 공간이 필요합니다.