에서이 같은 프로젝트 구조를 가지고있다.QML의 디렉토리는 출시되지
지금 모든 것을 내가 QtCreator
에서 실행을 클릭하면 잘 실행하지만 windeployqt
문제를 배포하고 싶은대로 QML
-dir이 release
-dir에 복사되지 않는 것입니다. 이해가 안되는, 나는 그것이 (내 잘못)이 .qmake.conf
의 결함 일 수 있다고 생각
project
|-.moc
|-.obj
|-.pch
|-.rcc
|-debug
|-QML <-- This should not be here, but a subdir of release
|-release
|-app.exe
|-...otherstuff
: I합니다 (windeployqt
다음 make install
포함)을 배포 할 때
, 나는 파일 구조를 얻을 그리고 qtvirtualkeyboard
.qmake.conf 기술 :
load(qt_build_config)
MODULE_VERSION = 5.8.1
.qmake.stash : 나는로 이전하기 전에
QMAKE_DEFAULT_INCDIRS = \
D:/Qt/Qt5.7.0/Tools/mingw530_32/lib/gcc/i686-w64-mingw32/5.3.0/include \
D:/Qt/Qt5.7.0/Tools/mingw530_32/lib/gcc/i686-w64-mingw32/5.3.0/include-fixed \
D:/Qt/Qt5.7.0/Tools/mingw530_32/i686-w64-mingw32/include \
D:/Qt/Qt5.7.0/Tools/mingw530_32/i686-w64-mingw32/include/c++ \
D:/Qt/Qt5.7.0/Tools/mingw530_32/i686-w64-mingw32/include/c++/i686-w64-mingw32 \
D:/Qt/Qt5.7.0/Tools/mingw530_32/i686-w64-mingw32/include/c++/backward
QMAKE_DEFAULT_LIBDIRS = \
D:/Qt/Qt5.7.0/Tools/mingw530_32/lib/gcc/i686-w64-mingw32/5.3.0 \
D:/Qt/Qt5.7.0/Tools/mingw530_32/lib/gcc \
D:/Qt/Qt5.7.0/Tools/mingw530_32/i686-w64-mingw32/lib \
D:/Qt/Qt5.7.0/Tools/mingw530_32/lib
또는 lib.pro
의 하나가 바로 저장소에서 복사 한 projectfiles,의에, 그리고 자체에 app.pro
는 잘 실행되었다 서브 프로젝트 project.pro
.
(EDIT)는 내가 besids는 QML - 디렉토리를 복사 할 사용자 정의 배포 단계을 추가하는 것으로 해결할 수있는 방법을
TEMPLATE = app
QT += qml quick
CONFIG += c++11 \
disable-desktop
SOURCES += main.cpp \
...
RESOURCES += \
ICONS\ICONS.qrc
QML_IMPORT_PATH =
include(deployment.pri)
DISTFILES += \
QML/...
...
HEADERS += \
CPP/...
...
qmlsrc.files = QML/*
qmlsrc.path = $$OUT_PWD/QML
INSTALLS += qmlsrc
을 app.pro? 의 답을 따라 @KevinKrammer은 문제가 qmlsrc.path = $$OUT_PWD/QML
안에 있다고 결론 내립니다. OUT_PWD
은 Makefile이 생성되는 경로를 포함합니다. 난 단지 app.pro
를 실행하는 경우에, 맞아,하지만 난 project.pro
를 실행할 때 그렇게 $$PATH_TO_THE_EXE/QML
가 일반적으로 어떻게 든 그것을 작성하는 방법은 두 경우 모두에서 작동하는지, 거기에 $$OUT_PWD/[debug,relase,...]/QML
에 해당해야합니다 : 때 나는 project.pro
를 실행할 때와 app.pro
을 실행하고 모두 release
및 debug
, 모드?
내 대답을 편집하여 디버그/릴리스 차이에 대한 옵션을 제안했습니다. 취급 –