用msys1.0+mingw gcc4.7.1编译libodb(C++ ORM)
2013-12-12 00:00
155 查看
这里主要使用的是libodb 对sqlite数据库的支持.
(1)下载编译sqlite3,当初编译go-sqlite3的时候下载过sqlite3,就直接拿过来用了.
(2)下载libodb到/d/wxwidgets/wxcode/
libodb-2.3.0.zip libodb的库
libodb-sqlite-2.3.0.zip libodb对Sqlite数据库的支持
(3)编译libodb的通用库.
顺利编译成功.
(4)编译libodb的sqlite支持
提示libsqlite3没有找到,因为上面对sqlite3的编译后,对头文件与静态库的存放,没有按msys的标准(或POSIX标准或类unix标准)存放.执行./configure --includedir=/d/private/library/inc/sqlite3或./configure --includedir=/d/private/library/inc/sqlite3 --libdir=/d/private/library/lib 还是提示找不到sqlite3, 提示信息如下:
直接在msys中执行下面的命令,不再传递--includedir与--libdir参数,这时对sqlite3的检查顺利通过.
提示sqlite3的一个特性没有开启,可能是在编译的时候开启这个特性的控制宏没有定义.或当前代码的版本不支持libodb需要的特性,暂时不理会了.
checking for libsqlite3... yes
configure: WARNING: libsqlite3 is built without sqlite3_unlock_notify support; multi-threaded support will be limited
checking for libodb... no
configure: error: libodb is not found; consider using --with-libodb=DIR
需要指定libodb的路径
之后顺利通过configure, 并且make 直接编译成功.
(1)下载编译sqlite3,当初编译go-sqlite3的时候下载过sqlite3,就直接拿过来用了.
start msys.bat gcc -c sqlite3.c -I./inc/sqlite3/ ar crvs libsqlite3.a sqlite3.o cp libsqlite3.a /d/private/library/lib cp sqlite3.h /d/private/library/inc/sqlite3 cp sqlite3ext.h /d/private/library/inc/sqlite3 rm libsqlite3.a rm sqlite3.o
(2)下载libodb到/d/wxwidgets/wxcode/
libodb-2.3.0.zip libodb的库
libodb-sqlite-2.3.0.zip libodb对Sqlite数据库的支持
(3)编译libodb的通用库.
start msys.bat cd /d/wxwidgets/wxcode/libodb-2.3.0 ./configure make
顺利编译成功.
(4)编译libodb的sqlite支持
start msys.bat cd /d/wxwidgets/wxcode/libodb-sqlite-2.3.0 ./configure
提示libsqlite3没有找到,因为上面对sqlite3的编译后,对头文件与静态库的存放,没有按msys的标准(或POSIX标准或类unix标准)存放.执行./configure --includedir=/d/private/library/inc/sqlite3或./configure --includedir=/d/private/library/inc/sqlite3 --libdir=/d/private/library/lib 还是提示找不到sqlite3, 提示信息如下:
config.lt: creating libtoolchecking for libsqlite3... noconfigure: error: libsqlite3 is not found; consider using CPPFLAGS/LDFLAGS to specify its location
直接在msys中执行下面的命令,不再传递--includedir与--libdir参数,这时对sqlite3的检查顺利通过.
export CXXFLAGS=-I/d/private/library/inc/sqlite3 export LDFLAGS=-L/d/private/library/lib ./configure
提示sqlite3的一个特性没有开启,可能是在编译的时候开启这个特性的控制宏没有定义.或当前代码的版本不支持libodb需要的特性,暂时不理会了.
checking for libsqlite3... yes
configure: WARNING: libsqlite3 is built without sqlite3_unlock_notify support; multi-threaded support will be limited
checking for libodb... no
configure: error: libodb is not found; consider using --with-libodb=DIR
需要指定libodb的路径
./configure --with-libodb=/d/wxwidgets/wxcode/libodb-2.3.0
之后顺利通过configure, 并且make 直接编译成功.
checking for libsqlite3... yesconfigure: WARNING: libsqlite3 is built without sqlite3_unlock_notify support; multi-threaded support will be limitedchecking for libodb... yeschecking whether to use rpath... yes
相关文章推荐
- 用msys1.0+mingw gcc4.7.1编译libodb(C++ ORM)
- MinGW(msys 1.0) 编译 splint
- MinGW(msys 1.0) 编译 splint
- Android Studio 1.0 JNI 引用多个C++文件编译找不到类的问题
- 在win7命令行下编译运行C++程序
- c++:eclipse 开发c++环境配置(保你编译成功)
- 编译可在Android上运行的可执行文件:C/C++交叉编译环境
- 新手入门,三言两语说编译:C和C++…
- Ubuntu系统配置Visual Studio Code并编译运行C++程序
- C++应用程序在Windows下的编译、链接:(一)概述
- c/c++程序编译连接过程
- 在WIndow下安装好MSYS之后如何编译FFmpeg文件使之生成.so文件
- 在linux环境下编译一个c/c++工程
- C/C++编译的程序占用的内存
- 转换指南 —— 从 ISO-C++ 到 C++/CLI v1.0
- 如何在windows中使用cmd命令去编译,运行C++程序
- 【c/c++】wiredtiger-2.9.3编译错误
- C#调用C++编译的DLL详解
- 提高VS2008的C++项目编译速度——开启多核编译
- 自动化编译C/C++程序脚本