하위 템플릿이있는 qtcreator 프로젝트가 있습니다.qmake 하위 폴더 템플릿으로 빌드 한 후 첫 번째 프로젝트를 설치하는 방법은 무엇입니까?
: 그래서 나는 staticLib.pro 파일의 설치 옵션을 추가TEMPLATE = subdirs
CONFIG += ordered
SUBDIRS = staticLib \
testApp
testApp.depends = staticLib
내가 정적 라이브러리를 설치하고자 :
mainProject/
mainProject.pro
staticLib/
(bunch of .cpp and .h files)
staticLib.pro
testApp/
main.cpp
testApp.pro
그리고 mainProject.pro 파일 : 폴더는 다음과 같습니다
headersDataFiles.path = $$LIBPATH/include
headersDataFiles.files = $$PWD/*.h
INSTALLS += headersDataFiles
libraryFiles.path = $$LIBPATH/lib
Debug:libraryFiles.files = $$OUT_PWD/debug/*.a
Release:libraryFiles.files = $$OUT_PWD/release/*.a
INSTALLS += libraryFiles
문제는 내가 Qtcreator에서 프로젝트를 빌드 할 때 정적 라이브러리를 빌드 한 다음 make install을 먼저 실행하지 않고 애플리케이션을 빌드 할 때 문제가 발생하여 앱 빌드가 실패합니다. 그리고 Qtcreator는 qmake_all (lib를 먼저 설치하지 않고 두 프로젝트를 빌드) 이후에 빌드 단계를 추가 할 수있게 해줍니다.
그래서 질문은, 내가 staticLib 프로젝트를 빌드하고, 설치 한 다음 testApp을 빌드 할 수있는 방법이 있습니까?
EDIT : testApp 프로젝트는 항상 첫 번째 프로젝트의 출력 디렉토리에서 라이브러리에 링크 될 수 있습니다. 그러나 .a 및 헤더 파일을 다른 폴더로 이동하여 프로젝트를 체계적으로 구성하고 싶습니다. testApp 빌드 실패는 문제가 아닙니다. 오해를해서 죄송합니다.
의존성이있는 정적 라이브러리를 사용하여 무언가를 컴파일하려면 설치가 필요하지 않습니다. testApp.pro에서 잘못 설정된 것처럼 보입니다 - 공유 할 수도 있습니까? Qt Creator를 통해 testApp에 정적 라이브러리를 추가하려고 시도 했습니까? –
예, 맞습니다. 설치는 다시하지 않습니다. 사실 내가 원하는 것을 시스템에 설치하는 것이 아니라 생성 된 .a 및 헤더를 프로젝트의 다른 폴더로 이동하여 프로젝트를 체계적으로 정리할 수 있습니다. 의견을 보내 주셔서 감사 드리며 오해를해서 죄송합니다. 질문을 편집했습니다. –