我已經用QT編寫了一個應用程序,提供GUI和數據庫連接,並且所選的驅動程序是SQLITE。當我在自己的系統上工作(更新到最新版本的Ubuntu desctop 11)時,安裝了Qt4 SDK和sqlite,一切正常。但是,嘗試在目標PC上啓動我的可執行文件以失敗告終。QT/SQLITE應用程序部署問題
這裏是我的親文件:
#-------------------------------------------------
#
# Project created by QtCreator 2011-05-22T09:15:05
#
#-------------------------------------------------
QT += core gui sql
TARGET = Peacecourse
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp \
goodtable.cpp
HEADERS += mainwindow.h \
peaceCon.h \
goodtable.h
FORMS += mainwindow.ui \
goodtable.ui
CONFIG += static
#wince*: DEPLOYMENT_PLUGIN += qsqlite
對於部署我所做的就是複製我的可執行文件(因爲我自己的系統上工作)。結果,我得到了關於缺少QSQLITE驅動程序的消息,自然,程序沒有再運行。
關於目標系統的一些信息:就我可以確定的來說,它是Ubuntu,年齡適中,我沒有root權限,並且安裝QT是非常不容易的。但是,它具有Sun Virtual Box,原則上可以在虛擬機上創建所需的環境。然而,當我試圖做到這一點時(我責備糟糕的硬件),我因爲文件系統錯誤而無法複製QT安裝文件在虛擬機的桌面上的步驟。
另一件事,那裏沒有QT,但安裝了sqlite。
我如何證明我的應用程序在我描述的系統上的工作?我怎樣才能創建我的應用程序的單一可執行的分佈?
UPDATE
上 'CLEN' 的Ubuntu 11.04的另一個問題又出現了(沒有任何更新,QT或源碼)。嘗試啓動應用程序後,我得到消息:
error while loading shared libraries: libQtSql.so.4: cannot open shared object file: No such file or directory
這就引出了我一個問題:我怎樣才能使這個圖書館嵌入在我的應用程序,以消除.so文件的需要?
如果我正確理解你,將sqlite的.so文件放在./plugins/sqldrivers(其中.exe是可執行文件所在的文件夾)將會解決問題嗎? – Srv19 2011-05-24 10:22:21
更新了我的回答,提供更多詳細信息 – Bruce 2011-05-25 02:05:51
謝謝。我將它放在一起並報告結果。 – Srv19 2011-05-25 08:22:07