DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  4737 随笔 :: 2 文章 :: 542 评论 :: 1615万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

1.下载odb-2.4.0-i686-windows,是cpp和sql文件生成工具,已经编译好了,如果下odb-2.4.0估计是未编译好的这个项目;

 
2.将...\odb-2.4.0-i686-windows\bin添加到环境变量Path,以便能使用odb.exe进行命令生成文件;
 
3.cmd进入到HelloWorld的person.hxx的同目录,输入odb -d mysql --generate-query person.hxx

生成person-odb.cxx、person-odb.hxx、person-odb.ixx三个文件;

 

3.下载libodb-2.4.0,这个是普通的lib,编译;


4.下载libodb-sqlite-2.4.0,这个是用sqlite数据库用到的,如果需要用mysql数据库,就得下载libodb-mysql-2.4.0版本的,特别注意,在libodb-sqlite-2.4.0项目有一个LIBODB_SQLITE_DYNAMIC_LIB预处理宏,如果在编译sqlite.lib时没有添加SQLITE_ENABLE_UNLOCK_NOTIFY预处理宏,编译libodb-sqlite-2.4.0就会报错,所找不到connection函数的定义,我是直接下载别人编译好的sqlite.lib,就出现了这问题,估计是没有添加这个预处理宏了,那怎么办,那就将libodb-sqlite-2.4.0项目的LIBODB_SQLITE_DYNAMIC_LIB预处理宏定义去掉,就可以成功编译通过。
 
5.odb -d mysql --generate-query --generate-schema person.hxx(手册里用这句生成了person.sql,而换成sqlite的话又没有东西生成,估计sqlite不需要吧)。
 
6.在官网提供的hello例子项目里添加:
...........\odb2.4.0\libodb-2.4.0;
............\odb2.4.0\libodb-sqlite-2.4.0;
.............\sqlite3;
头文件导入目录,其中省略号为你的文件夹对应的路径。
lib目录也是需要的:
..............\odb2.4.0\libodb-2.4.0\lib;
...............\odb2.4.0\libodb-sqlite-2.4.0\lib
同事也得添加依赖:
odb-sqlite-d.lib
odb-d.lib
 
之后就可以运行了!
 
ODB Compiler为ODB生成数据库支持代码文件工具,下windows版本即可;(必须)
Common Runtime Libraries 核心lib库;(必须)
Database Runtime Libraries 数据库lib库;(必须,下自己需要用到的数据库对应的版本即可)
其他的随意。
posted on   DoubleLi  阅读(757)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示