热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux之Qt利用Sqlite静态编译库(转)

参考:http:www.linuxidc.comLinux2011-1147465.htmsqlite3编译安装------------------------arm版-----------

参考:http://www.linuxidc.com/Linux/2011-11/47465.htm

sqlite3编译安装

------------------------arm版----------------------

1.从官方网站下载sqlite-autoconf-3070602.tar.gz

2.解压,进入当前目录

3.开始配置,执行命令如下(前提配置好交叉编译环境):
./configure --prefix=/usr/local/sqlite_arm --host=arm-linux

4.开始编译,执行命令如下:
make

5.开始安装,执行命令如下:
make install

6.安装完,进入/usr/local/sqlite_arm,里面有东西(bin lib include share)
生成说明安装成功

7.把整个安装文件sqlite_arm拷贝到开发板上

8.进入sqlite_arm的bin目录,配置环境如下:
export LD_LIBRARY_PATH=/mnt/sqlite3_arm/lib:$LD_LIBRARY_PATH

9.执行命令:
./sqlite3
如果成功会显示sqlite3版本,到此移植sqlite3成功.

-------------------sqlite3静态库-----------------
1.安装完arm版sqlite3,进入安装目录sqlite3_arm的lib目录底下,内容如下

libsqlite3.a   libsqlite3.so    libsqlite3.so.0.8.6
libsqlite3.la  libsqlite3.so.0  pkgconfig

2.把libsqlite3.a拷贝到自己的应用程序目录下(比如我的Qtcreator应用程序test_sqlite_static)
同时拷贝sqlite3_arm的include目录底下的sqlite3.h到test_sqlite_static

3.在Qtcreator中的test_sqlite_static.pro配置单下加如下内容:

LIBS +=-L/root/test_sqlite_static /
lsqlite3

4.同时项目中添加已存在的头文件sqlite3.h

5.主程序main.cpp如下:

#include 
#include "sqlite3.h"
#include
#include
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
sqlite3 *db=NULL;
char *zErrMsg=0;
int rc;

rc = sqlite3_open("test.db",&db);
if(rc)
{
fprintf(stderr,"Can't open database:%s/n",sqlite3_errmsg(db));
sqlite3_close(db);
return 0;
}
else printf("You have already successfully!/n");
sqlite3_close(db);

// return a.exec();
exit(1);
}

6.在Qtcreator中的Projects中的Build Settings项中的Qt version设置为Qt/e版本

7.编译程序,然后把程序拷贝到开发板,同时需要库:
libQtCore.so.4 libQtNetwork.so.4 libQtTest.so.4

8.运行程序./test_sqlite_static,成功则在当前目录有test.db文件生成 

注意:

make时会出错:

“arm-none-linux-gnueabi-gcc: 3.7.6.2": No such file or directory”
Makefile 127行的“ 3.7.6.2”空格导致,去掉’3’之前的空格,编译通过。

推荐阅读
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
  • 本文介绍了深入浅出Linux设备驱动编程的重要性,以及两种加载和删除Linux内核模块的方法。通过一个内核模块的例子,展示了模块的编译和加载过程,并讨论了模块对内核大小的控制。深入理解Linux设备驱动编程对于开发者来说非常重要。 ... [详细]
  • 本文介绍了一种划分和计数油田地块的方法。根据给定的条件,通过遍历和DFS算法,将符合条件的地块标记为不符合条件的地块,并进行计数。同时,还介绍了如何判断点是否在给定范围内的方法。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文介绍了为什么要使用多进程处理TCP服务端,多进程的好处包括可靠性高和处理大量数据时速度快。然而,多进程不能共享进程空间,因此有一些变量不能共享。文章还提供了使用多进程实现TCP服务端的代码,并对代码进行了详细注释。 ... [详细]
  • 本文介绍了解决二叉树层序创建问题的方法。通过使用队列结构体和二叉树结构体,实现了入队和出队操作,并提供了判断队列是否为空的函数。详细介绍了解决该问题的步骤和流程。 ... [详细]
  • 本文介绍了C函数ispunct()的用法及示例代码。ispunct()函数用于检查传递的字符是否是标点符号,如果是标点符号则返回非零值,否则返回零。示例代码演示了如何使用ispunct()函数来判断字符是否为标点符号。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 本文介绍了如何清除Eclipse中SVN用户的设置。首先需要查看使用的SVN接口,然后根据接口类型找到相应的目录并删除相关文件。最后使用SVN更新或提交来应用更改。 ... [详细]
  • 海马s5近光灯能否直接更换为H7?
    本文主要介绍了海马s5车型的近光灯是否可以直接更换为H7灯泡,并提供了完整的教程下载地址。此外,还详细讲解了DSP功能函数中的数据拷贝、数据填充和浮点数转换为定点数的相关内容。 ... [详细]
  • SpringBoot整合SpringSecurity+JWT实现单点登录
    SpringBoot整合SpringSecurity+JWT实现单点登录,Go语言社区,Golang程序员人脉社 ... [详细]
  • 本文分析了Wince程序内存和存储内存的分布及作用。Wince内存包括系统内存、对象存储和程序内存,其中系统内存占用了一部分SDRAM,而剩下的30M为程序内存和存储内存。对象存储是嵌入式wince操作系统中的一个新概念,常用于消费电子设备中。此外,文章还介绍了主电源和后备电池在操作系统中的作用。 ... [详细]
author-avatar
大绿
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有