Sqlite3 交叉编译 undefined reference to `fdatasync’ 错误解决

Sqlite3 交叉编译 undefined reference to `fdatasync

交叉编译sqlite到Android平台, Android.mk 文件内容如下:

LOCAL_PATH:= $(call my-dir)

INCDIR:=/home/android-ndk-r6b/sources/cxx-stl/gnu-libstdc++/libs/armeabi/include

# first lib, which will be built statically
#
include $(CLEAR_VARS)

LOCAL_MODULE    := cloudstore_MTD
LOCAL_SRC_FILES := debug.c  hash.c  fusex.cpp  listex.c  storex.cpp  md5.c main.c  markup.cpp  http_fet
cher.c spthreadpool.c

LOCAL_C_INCLUDES := /home/fuse-2.8.3/include /home/sqlite-autoconf-3070500  /home/android-ndk-r6b/platf
orms/android-9/arch-arm/usr/include /home/android-ndk-r6b/sources/cxx-stl/gnu-libstdc++/include /home/a
ndroid-ndk-r6b/samples/fuse-android/jni/include $(INCDIR)

LOCAL_CFLAGS :=-Wall -lulockmgr -pipe -D_FILE_OFFSET_BITS=64 -D_DEBUG -DANDROID_SDK -DUSE_OPEN -DUSE_TH
READ -DDEBUG -O2
LOCAL_CPPFLAGS :=

include $(BUILD_EXECUTABLE)

在jni目录下面执行  /home/android-ndk-r6b/ndk-build  , 编译, 总是出现如下错误:

[root@localhost jni]# /home/android-ndk-r6b/ndk-build
Compile thumb  : sqlite3_android Compile thumb  : sqlite3 StaticLibrary  : libsqlite3.a
Executable     : sqlite3_android
/home/android-ndk-r6b/samples/sqlite-android/obj/local/armeabi/libsqlite3.a(sqlite3.o): In function `unixSync’:
sqlite3.c:(.text.unixSync+0x6): undefined reference to `fdatasync’
sqlite3.c:(.text.unixSync+0x14): undefined reference to `fdatasync’
collect2: ld returned 1 exit status
make: *** [/home/android-ndk-r6b/samples/sqlite-android/obj/local/armeabi/sqlite3_android]

搜索了好多地方,, 找解决问题的办法, 最后还是在官方bug列表里面找到了, 原来是一个bug, 下来就下载了最新的版本后, 重新编译, 问题解决。

最新的版本为   sqlite-autoconf-3070800.tar.gz

linux

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1943380.html

(0)
上一篇 2025年2月23日 01:10:01
下一篇 2025年2月23日 01:10:27

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Ubuntu Linux下使用SQLITE JDBC

    在Ubuntu下可以用新立得去安装SQLITE,当然也可以自己去下载编译,我没有弄,怕弄乱系统。SQLite 是 D. Richard Hipp 用 C 语言编 在Ubuntu下可以用新立得去安装SQLITE,当然也可以自己去下载编译,,我…

    数据库 2025年2月23日
    100
  • Linux SQLite安装

    一、软件包 a) sqlite-autoconf-3070400.tar.gz二、安装步骤a) tar zxvf sqlite-autoconf-3070400.tar.gzb) cd sqlite-autoconf- 首页 → 数据库技术…

    数据库 2025年2月23日
    100
  • Linux下SQLite移植

    # tar zxvf sqlite-3.3.8.tar.gz 解压完成之后将会在/root目录下生成一个sqlite-3.3.8/子目录,在该目录中包含了编译所   闲话少说,直奔主题,下面就是移植步骤:   1、移植      首先从这里…

    数据库 2025年2月23日
    100
  • S3C2410下嵌入式数据库SQLite的移植

    对SQLite-3.3.8(或者SQLite3.3.12)进行交叉编译,并移植到ARMS3C2410的过程:要将SQLite3.3.8(或者SQLite-3.3.12)移植到ARM2 对SQLite-3.3.8(或者SQLite3.3.12…

    数据库 2025年2月23日
    100
  • Android的Sqlite导出及数据操作经验分享

    分享下android的sqlite导出及数据操作经验。sqliteadmin.zip是一个sqlite可视化管理软件,我上传了一个在csdn下载频道。1、设置环 分享下Android的sqlite导出及数据操作经验。sqliteadmin.…

    数据库 2025年2月23日
    100
  • 一步一步实现C++操作SQLite数据库

    SQLite,是一款轻型的数据库,是遵守ACID的关联式关系数据库,目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入 SQLite关系数据库,目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几…

    数据库 2025年2月23日
    100
  • 使用嵌入式关系型SQLite数据库存储数据

    除了可以使用文件或SharedPreferences存储数据,还可以选择使用SQLite数据库存储数据。在Android的平台上,集成了一个嵌入式关系 除了可以使用文件或SharedPreferences存储数据,还可以选择使用SQLite…

    数据库 2025年2月23日
    200
  • Python Sqlite3数据库相关操作

    1、连接数据库: cx= sqlite3.connect(‘database.db’) ,cx是一个数据库连接对象,它有以下操作: commit()–事务提交 rollbac 1、连接数据库: cx= sqlite3.conne…

    数据库 2025年2月23日
    200
  • SQLite数据库SQLite3命令

    SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令。本文档提供一个样使用sqlite3 SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQ…

    数据库 2025年2月22日
    200
  • 嵌入式 数据库 SQLite 移植和测试

    一、测试 1. 从 sqlite 网站http://sqlite.org/download.html上下载最新的 sqlite 源码sqlite-autoconf-3070500.tar.gz,目前最新 一、测试 1. 从 sqlite 网…

    数据库 2025年2月22日
    200

发表回复

登录后才能评论