嵌入式成长轨迹64 【智能家居项目】【ARM 飞凌ok6410】【将PC端QT代码修改为ARM端可用】

推荐阅读顺序:

 

基本环境搭建:

   【配置】在虚拟机Ubuntu下NFS网络文件系统建立

   《ok6410 Qt移植百科全书》

   【配置】QT&QWT&sqlite3安装配置 

这中间出现问题可查阅

   【调试】ARM QT 移植环境搭建问题---补充《ok6410 Qt移植百科全书》

 

 

日常使用:

  【配置】将PC端QT代码修改为ARM端可用

  【配置】SD卡一键烧写

这中间出现问题可查阅:

  【调试】智能家居代码移植时环境调试问题集锦 

 

Version 2012.12.6

环境配置人员

郑子木

配置步骤1  修改pro的includepath

在QT项目的.pro文件中的includepath处添加一行INCLUDEPATH += /usr/local/include(ARM板和PC端有sqlite3.h的地方)

配置步骤2 .pro中修改LIBS

在QT项目的.pro文件中的LIBS += -L"/usr/local/qwt-5.2.1/lib/" -lqwt -lsqlite3

在-lsqlite3前加上-L"" -L后指向静态库sqlite3.a所在目录"/usr/local/lib"

 

配置步骤3 对放置数据库文件的目录进行权限设置(可读写,包括子目录)

chmod  777 ../Database -R

配置步骤4 修改源文件中的数据库调用语句

 

数据库文件调用时要使用绝对路径!!使用相对路径可能会导致数据库打开失败

1、

//database.cpp

QSqlDatabase dbconn = QSqlDatabase::addDatabase("QSQLITE");

    dbconn.setDatabaseName("/opt/SmartHome/Database/SmartHomeDatabase.db");//【注意这里!】

    dbconn.setUserName("smartHome");

    dbconn.setPassword("123456");

 

2、

//CDatabase.cpp

bool CDataBase::Init()

{

    if(OpenDB("/opt/SmartHome/Database/SmartHomeDatabase.db"))//【注意这里!】

        return true;

    if(DEBUG==true)

    {

        cout <<"Database初始化失败了"<<endl;

    }

    return false;

}

注意事项

 

原文地址:https://www.cnblogs.com/zeedmood/p/2808395.html