u010355811
锅巴君
采纳率0%
2019-07-30 15:28

关于sqlite3移植到vxworks6.9时出现的undifined symbol问题

5

编译顺利通过,运行包含了数据库的.out程序时报错如下
图片说明

一开始的报错更多,其中包含了各类thread的线程相关错误,我在编译环境的宏定义中增加了
DEFINES:-DSQLITE_THREADSAFE=0。

后与线程相关的报错都消失了,但是还有这3个函数一直无法找到。
其中的fturncate在中,而mmap和munmap在中的。

我尝试直接在sqlite3.c中包含这两个头文件,但依然没用。
sqlite3.c中引用了这两个头文件中许多其他函数,都没有出现过类似的报错,只有这3个函数一直搞不定,求大神帮忙看看,到底哪里出了问题

是我引用的vxworks6.9中对应的库文件缺少相关的函数实现吗?不应该,我顺着找到了这两个h文件,里面的函数都是有好好地声明了的。

还是我缺少定义了什么其他与sqlite3配置有关的宏定义?就比如我加上threadsafe后线程相关的undifined symbol全都消失了,是否这3个函数里ftruncate(改变文件大小),以及mmap、mummap(申请、释放内存映射)这些函数需要先通过宏定义打开某些开关才能被识别?

求大神帮忙。。这几天实在被这问题搞的头都大了

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • qq_27350301 咩懒懒 1月前

    要把包含这几个函数的组件在内核中加上哦~

    点赞 评论 复制链接分享