저는 QML 및 JavaScript 함수로 완전히 구현 된 Qt Quick 2로 응용 프로그램을 작성했습니다. (아래에 설명 된 main.cpp는 제외)QML 앱을 배포 할 때 SQLite 데이터베이스를 찾을 수 없습니다.
모델의 경우 LocalStorage 기능을 사용하고 있습니다. 내 응용 프로그램이 내 컴퓨터에서 제대로 작동하고 다른 컴퓨터로 내 보낸. 다른 컴퓨터에서는 응용 프로그램이 시작되지만 모든 dataBase 기능이 작동하지 않습니다.
나는 다음 로컬 스토리지의 기본 경로는 User\AppData\Local\MyAppName\QML\OfflineStorage\Databases
했다 그리고 그것은 setOfflineStoragePath();
하여 Main.cpp 사용하여 변경 될 수 있다는 것을 발견 :
int main(int argc, char *argv[]) {
QGuiApplication app(argc, argv);
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:///main.qml")));
engine.setOfflineStoragePath(QString("./"));
return app.exec();
}
가 다시이에 잘 작동 내 컴퓨터에서 실행되지만 다른 컴퓨터에서는 결과가 나타나지 않습니다. (데이터베이스 폴더는 .sqlite 및 .ini 파일과 함께 지정된 경로에 만들어집니다.)
다른 컴퓨터에서는 .ini 파일 만 생성되고 .sqlite 파일은 생성되지 않는 것으로 나타났습니다.
내 코드에 오류가 있다고 생각 하겠지만 Qt 작성자에서 내 프로젝트 (컴퓨터에 관계없이)를 컴파일 할 때마다 제대로 실행됩니다.
이PS 감사 : 나는 컴파일러 메뉴 (대신 릴리스) 디버그의 conf를 사용하고
그와 비슷한 것이 었습니다. 당신이 묘사하는 그 라이브러리 중 일부가 있었지만, 그것들을 복사해서 붙여 넣기 만하면됩니다. QML 앱을 실제로 배포하는 것은 엉망입니다 ... – Glukose