wxSqlite3 issue

In this forum you can discuss database related issues which can be wxWidgets related, but also generic in nature.
Post Reply
samsam598
Super wx Problem Solver
Super wx Problem Solver
Posts: 324
Joined: Mon Oct 06, 2008 12:55 pm

wxSqlite3 issue

Post by samsam598 » Sat May 30, 2009 10:57 am

Move here---

Hello Sirs and Madams,

How to set up a workable wxSqlite lib and all needed stuffs to get started with wx+database programming?

I am sorry for asking such a silly question.I notice ppl here using wxSqlite and it seems it is so simple to install or compile.But to me it is so difficult to get it done.

BTW,if here it is not the right place to post,sorry for my ignorance.

Sys version:XP+sp3,mingw3.4.5+wxWidget2.8.9+wxDev-cpp. C::B+mingw3.4.5+wxWidgets2.9 (2 separate installations)
wxSqlite3 version:1.9.5
DatabaseLayer version:1.8

*Please note the above 2 are my separate trial,note together.

All sqlite dependencies were included in the static lib project.All included path revised if needed.Such as oracle dependencies excluded from the project since I have no such installed.

Result:compile failed,too many errors.

It would be grateful if somebody can lend me a hand on a workable guideline.

Best Regards,
Sam
Last edited by samsam598 on Sat May 30, 2009 1:13 pm, edited 1 time in total.

utelle
Moderator
Moderator
Posts: 940
Joined: Tue Jul 05, 2005 10:00 pm
Location: Cologne, Germany
Contact:

Re: wxSqlite3 issue

Post by utelle » Sat May 30, 2009 12:07 pm

samsam598 wrote:Move here---
Please do not cross-post.
samsam598 wrote:How to set up a workable wxSqlite lib and all needed stuffs to get started with wx+database programming?
My wxSQLite3 distribution contains several build files for different platforms and compilers. And even if this does not work for you, you could always add the wxSQLite3 files to your own project as it consists of only one .cpp-file and few .h-files.
samsam598 wrote:I am sorry for asking such a silly question.I notice ppl here using wxSqlite and it seems it is so simple to install or compile.
wxSQLite3 comes with a small sample application showing how to interface to the database.

For GUI projects you might get some inspirations from this project: http://code.google.com/p/wxquickrun/.
samsam598 wrote:Sys version:XP+sp3,mingw3.4.5+wxWidget2.8.9+wxDev-cpp.
wxSqlite3 version:1.9.5
DatabaseLayer version:1.8

*Please note the above 2 are my separate trial,note together.

These two database libraries for wxWidgets have a completely different approach. While Databaselayer hides which underlying database system is used (there is support for MySQL, PostGres, SQLite, Oracle ...) and thus has to hide database specific functionality, wxSQLite3 supports only SQLite 3.x databases but gives you access to almost all special features of SQLite.

So you have to decide which library suits best your needs. If you want to write a database application which uses SQLite now but might be required to support other database systems at a later time, then Databaselayer is for you. If you don't mind that you are restricted to a single database system, namely SQLite, but want to take full advantage of SQLite's features then wxSQLite3 is for you.
samsam598 wrote:All sqlite dependencies were included in the static lib project. All included path revised if needed. Such as oracle dependencies excluded from the project since I have no such installed.

Result:compile failed,too many errors.
wxSQLite3 doesn't have other dependencies than SQLite. To compile wxSQlite3 it is sufficient to list on the compiler command line the include directories of wxSQLite3 itself and the directory where the file sqlite3.h of the SQLite version you intend to use resides.

Regards,

Ulrich

samsam598
Super wx Problem Solver
Super wx Problem Solver
Posts: 324
Joined: Mon Oct 06, 2008 12:55 pm

Re: wxSqlite3 issue

Post by samsam598 » Sat May 30, 2009 1:06 pm

Thank you so much for all your help!!
utelle wrote:
samsam598 wrote:Move here---
Please do not cross-post.
Yes,Sir!
samsam598 wrote:How to set up a workable wxSqlite lib and all needed stuffs to get started with wx+database programming?
My wxSQLite3 distribution contains several build files for different platforms and compilers. And even if this does not work for you, you could always add the wxSQLite3 files to your own project as it consists of only one .cpp-file and few .h-files.
quote]

In C::B nightly build5602+wx2.9+mingw3.4.5+wxSqlite3 ver1.9.5:

Please note this wxWidget2.9 resides in e:\widgets and the relative path has included in the sys environment.

Try one:
In build folder run mingw32-make -f makefile.gcc :

E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\build>mingw32-make -f makefile.gcc
if not exist gccmswd mkdir gccmswd
----------------------------------------------------------------------------
The selected wxWidgets build is not available!
Please use the options prefixed with WX_ to select another wxWidgets build.
----------------------------------------------------------------------------
mingw32-make: *** [test_for_selected_wxbuild] Error 1

E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\build>

Try Two:
1.Create new wx empty project with your *minimal* sample;
2.revise #include path to real folder which contains wxSqlite3 source and sqlite3.h etc.
3.Add all relative path(inclue\wx;sqlite3\include) to the projects
4.Add sqlite3.h (sqlite3\inclue)to the project,revise the #include directive if needed;
5.Add wx*.h (include\wx) to the project;
5.Add sqlite3.a (which is in the secure folder)to the project;

F9,errors:
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|97|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|98|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|99|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|100|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|101|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|102|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|103|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|104|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|105|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|107|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|108|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|109|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|110|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|111|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|112|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|113|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|114|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|115|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|116|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|118|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|119|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|120|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|121|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|122|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|123|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|125|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|127|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|128|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|130|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|131|error: cannot convert `const char*' to `const wxChar*' in initialization|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3ResultSet::GetDate(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|517|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|517|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3ResultSet::GetTime(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|544|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|544|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3ResultSet::GetDateTime(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|570|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|570|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3ResultSet::GetTimestamp(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|597|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|597|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3Table::GetDate(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1186|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1186|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3Table::GetTime(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1205|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1205|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3Table::GetDateTime(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1224|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1224|warning: NULL used in arithmetic|
||=== Build finished: 30 errors, 14 warnings ===|

Am I missing something?

Regards,
Sam

Auria
Site Admin
Site Admin
Posts: 6695
Joined: Thu Sep 28, 2006 12:23 am
Contact:

Post by Auria » Sat May 30, 2009 2:14 pm

Conversions from char* to wxChar* sound like issues with ANSI vs Unicode.

Does that mean wxSqLite isn't compatible with unicode? I sure hope this isn't the case :?
"Keyboard not detected. Press F1 to continue"
-- Windows

utelle
Moderator
Moderator
Posts: 940
Joined: Tue Jul 05, 2005 10:00 pm
Location: Cologne, Germany
Contact:

Post by utelle » Sat May 30, 2009 4:58 pm

Auria wrote:Conversions from char* to wxChar* sound like issues with ANSI vs Unicode.

Does that mean wxSqLite isn't compatible with unicode? I sure hope this isn't the case :?
Certainly not. wxSQLite3 works best in Unicode mode.

The problem here is, that samsam598 uses wxWidgets 2.9 which isn't even released officially. In wxWidgets 2.9 char and string support has changed a lot. Unfortunately this leads to incompatibilities. This has already been dicussed:

http://forums.wxwidgets.org/viewtopic.php?t=22701

I'll address the issue after the official release of wxWidgets 2.9.

Regards,

Ulrich

utelle
Moderator
Moderator
Posts: 940
Joined: Tue Jul 05, 2005 10:00 pm
Location: Cologne, Germany
Contact:

Re: wxSqlite3 issue

Post by utelle » Sat May 30, 2009 5:18 pm

samsam598 wrote:In C::B nightly build5602+wx2.9+mingw3.4.5+wxSqlite3 ver1.9.5:

Please note this wxWidget2.9 resides in e:\widgets and the relative path has included in the sys environment.
wxWidgets 2.9 is not yet released officially and so it is not yet supported by wxSQLite3.
samsam598 wrote:Try one:
In build folder run mingw32-make -f makefile.gcc :

E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\build>mingw32-make -f makefile.gcc
if not exist gccmswd mkdir gccmswd
----------------------------------------------------------------------------
The selected wxWidgets build is not available!
Please use the options prefixed with WX_ to select another wxWidgets build.
When using the makefiles it might be necessary to adjust them according to the options used when wxWidgets was built. Most options can be configured via options on the make command line. Please read the makefile. Which options are available and which meaning they have is explained there.
samsam598 wrote:Try Two:
1.Create new wx empty project with your *minimal* sample;
2.revise #include path to real folder which contains wxSqlite3 source and sqlite3.h etc.
3.Add all relative path(inclue\wx;sqlite3\include) to the projects
4.Add sqlite3.h (sqlite3\inclue)to the project,revise the #include directive if needed;
5.Add wx*.h (include\wx) to the project;
5.Add sqlite3.a (which is in the secure folder)to the project;

F9,errors:
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|97|error: cannot convert `const char*' to `const wxChar*' in initialization|
This is a known issue with wxWidgets 2.9. Please read here http://forums.wxwidgets.org/viewtopic.php?t=22701.
samsam598 wrote:E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3ResultSet::GetDate(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|517|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|517|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3ResultSet::GetTime(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|544|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|544|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3ResultSet::GetDateTime(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|570|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|570|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3ResultSet::GetTimestamp(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|597|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|597|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3Table::GetDate(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1186|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1186|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3Table::GetTime(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1205|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1205|warning: NULL used in arithmetic|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp||In member function `wxDateTime wxSQLite3Table::GetDateTime(int)':|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1224|warning: converting to non-pointer type `int' from NULL|
E:\wxsqlite3-1.9.5\wxsqlite3-1.9.5\src\wxsqlite3.cpp|1224|warning: NULL used in arithmetic|
||=== Build finished: 30 errors, 14 warnings ===|

Am I missing something?
The signature of several methods of the wxDateTime class have changed in wxWidgets 2.9. For the time being you have to adjust their use in wxSQLite3 yourself if you want to use wxWidgets 2.9.

I'll address these issues after the official release of wxWidgets 2.9. Most probably the next release of wxSQLite3 will support wxWidgets 2.9, too.

Regards,

Ulrich

samsam598
Super wx Problem Solver
Super wx Problem Solver
Posts: 324
Joined: Mon Oct 06, 2008 12:55 pm

Re: wxSqlite3 issue

Post by samsam598 » Sun May 31, 2009 1:31 am

Read the another thread mentioned that wxSqlite was built on wxWidgets2.8.9.

In my pc wxDev-cpp contains wxWidgets2.8.9 ,I tried to compile the sample this time use wxDev-cpp +mingw3.4.5:

Compiler: Default GCC compiler
Building Makefile: "F:\CodeBlocksProject\samples\Makefile.win"
Executing make...
mingw32-make.exe -f "F:\CodeBlocksProject\samples\Makefile.win" all
g++.exe -c minimal.cpp -o Objects/MingW/minimal.o -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.5/include" -I"C:/Dev-Cpp/include/c++/3.4.5/backward" -I"C:/Dev-Cpp/include/c++/3.4.5/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.5" -I"C:/Dev-Cpp/include" -I"C:/Dev-Cpp/" -I"C:/Dev-Cpp/include/3rdparty/wx/plotctrl" -I"C:/Dev-Cpp/include/3rdparty/wx/sheet" -I"C:/Dev-Cpp/include/3rdparty/wx/treemultictrl" -I"C:/Dev-Cpp/include/3rdparty/wx/things" -I"C:/Dev-Cpp/include/3rdparty/wx" -I"C:/Dev-Cpp/include/3rdparty" -I"C:/Dev-Cpp/include/common/wx/msw" -I"C:/Dev-Cpp/include/common/wx/generic" -I"C:/Dev-Cpp/include/common/wx/fl" -I"C:/Dev-Cpp/include/common/wx/gizmos" -I"C:/Dev-Cpp/include/common/wx/html" -I"C:/Dev-Cpp/include/common/wx/mmedia" -I"C:/Dev-Cpp/include/common/wx/net" -I"C:/Dev-Cpp/include/common/wx/ogl" -I"C:/Dev-Cpp/include/common/wx/plot" -I"C:/Dev-Cpp/include/common/wx/protocol" -I"C:/Dev-Cpp/include/common/wx/stc" -I"C:/Dev-Cpp/include/common/wx/svg" -I"C:/Dev-Cpp/include/common/wx/xml" -I"C:/Dev-Cpp/include/common/wx/xrc" -I"C:/Dev-Cpp/include/common/wx" -I"C:/Dev-Cpp/include/common" -I"F:/CodeBlocksProject/samples/wx" -D__WXMSW__ -D__GNUWIN32__ -D__WIN95__ -fexceptions -fno-pcc-struct-return -fstrict-aliasing -Wall -D__WXMSW__ -D__GNUWIN32__ -D__WIN95__ -fexpensive-optimizations -O3

minimal.cpp: In member function `virtual int Minimal::OnRun()':
minimal.cpp:482: warning: comparison between signed and unsigned integer expressions
minimal.cpp:502: warning: comparison between signed and unsigned integer expressions

minimal.cpp:493: warning: 'pbin' might be used uninitialized in this function

g++.exe Objects/MingW/minimal.o -o "Output\MingW\testWxSqlite3.exe" -L"C:/Dev-Cpp/Lib" -L"F:/CodeBlocksProject/samples/lib" -mwindows -lwxmsw28 -lwxmsw28_gl -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregex -lwxexpat -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lodbc32 -lopengl32 lib/sqlite3.a lib/sqlite3.lib wxSqlite3.a

Objects/MingW/minimal.o:minimal.cpp:(.text+0xbc): undefined reference to `wxSQLite3Database::wxSQLite3Database()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x116): undefined reference to `wxSQLite3Database::Open(wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x14b): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2c2): undefined reference to `wxSQLite3Database::Close()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x37c): undefined reference to `wxSQLite3Transaction::wxSQLite3Transaction(wxSQLite3Database*, wxSQLite3TransactionType)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x395): undefined reference to `wxSQLite3Database::GetAutoCommit()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x427): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x432): undefined reference to `wxSQLite3Transaction::Commit()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x440): undefined reference to `wxSQLite3Database::GetAutoCommit()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4d1): undefined reference to `wxSQLite3Transaction::~wxSQLite3Transaction()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x52e): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x541): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x56f): undefined reference to `wxSQLite3Transaction::~wxSQLite3Transaction()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x5ab): undefined reference to `wxSQLite3Database::ExecuteQuery(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x5cb): undefined reference to `wxSQLite3ResultSet::operator=(wxSQLite3ResultSet const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x5e1): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x5ff): undefined reference to `wxSQLite3ResultSet::NextRow()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x62f): undefined reference to `wxSQLite3ResultSet::GetInt(int, int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x666): undefined reference to `wxSQLite3Transaction::~wxSQLite3Transaction()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x6db): undefined reference to `wxSQLite3Database::ExecuteQuery(char const*)'

Objects/MingW/minimal.o:minimal.cpp:(.text+0x6fc): undefined reference to `wxSQLite3ResultSet::NextRow()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x727): undefined reference to `wxSQLite3ResultSet::GetAsString(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x781): undefined reference to `wxSQLite3ResultSet::Finalize()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x7dd): undefined reference to `wxSQLite3Database::Close()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x807): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x82d): undefined reference to `wxSQLite3ResultSet::Finalize()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x888): undefined reference to `wxSQLite3Transaction::wxSQLite3Transaction(wxSQLite3Database*, wxSQLite3TransactionType)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x8aa): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xb0c): undefined reference to `wxSQLite3RegExpOperator::wxSQLite3RegExpOperator(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xb1c): undefined reference to `wxSQLite3Database::InitializeSQLite()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xb2a): undefined reference to `wxSQLite3Database::wxSQLite3Database()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xb40): undefined reference to `wxSQLite3Database::GetVersion()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xbbb): undefined reference to `wxSQLite3Database::HasEncryptionSupport()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xc22): undefined reference to `wxSQLite3Database::Open(wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xcc9): undefined reference to `wxSQLite3Database::TableExists(wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xdab): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xe39): undefined reference to `wxSQLite3Database::TableExists(wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0xfb2): undefined reference to `wxSQLite3Database::ExecuteUpdate(wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x10b1): undefined reference to `wxSQLite3Database::TableExists(wxString const&, wxArrayString&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x11a5): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x11ba): undefined reference to `wxSQLite3Database::SetUpdateHook(wxSQLite3Hook*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1234): undefined reference to `wxSQLite3Database::ExecuteUpdate(wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x12b4): undefined reference to `wxSQLite3Database::ExecuteQuery(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x12d0): undefined reference to `wxSQLite3ResultSet::NextRow()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1347): undefined reference to `wxSQLite3ResultSet::GetString(int, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1797): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x17ad): undefined reference to `wxSQLite3Statement::~wxSQLite3Statement()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x17c3): undefined reference to `wxSQLite3Statement::~wxSQLite3Statement()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x17d9): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x17ef): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1805): undefined reference to `wxSQLite3Table::~wxSQLite3Table()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x181b): undefined reference to `wxSQLite3StatementBuffer::~wxSQLite3StatementBuffer()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1831): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1847): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x18c0): undefined reference to `wxSQLite3Database::~wxSQLite3Database()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x18e3): undefined reference to `wxSQLite3RegExpOperator::~wxSQLite3RegExpOperator()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1972): undefined reference to `wxSQLite3Blob::~wxSQLite3Blob()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1ada): undefined reference to `wxSQLite3Blob::~wxSQLite3Blob()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x1c4c): undefined reference to `wxSQLite3RegExpOperator::~wxSQLite3RegExpOperator()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x22f4): undefined reference to `wxSQLite3Database::Open(wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2489): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x24fe): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x257b): undefined reference to `wxSQLite3Database::SetUpdateHook(wxSQLite3Hook*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x261b): undefined reference to `wxSQLite3Database::Begin(wxSQLite3TransactionType)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x267f): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x26e7): undefined reference to `wxSQLite3Database::Commit()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2710): undefined reference to `wxSQLite3Database::ExecuteScalar(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x27de): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x27f5): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x28b4): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x28c2): undefined reference to `wxSQLite3Database::GetLastRowId()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2942): undefined reference to `wxSQLite3Database::ExecuteQuery(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2955): undefined reference to `wxSQLite3Database::HasMetaDataSupport()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2a9c): undefined reference to `wxSQLite3Database::GetMetaData(wxString const&, wxString const&, wxString const&, wxString*, wxString*, bool*, bool*, bool*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2c17): undefined reference to `wxSQLite3ResultSet::GetColumnCount()'

Objects/MingW/minimal.o:minimal.cpp:(.text+0x2c50): undefined reference to `wxSQLite3ResultSet::GetOriginName(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2c86): undefined reference to `wxSQLite3ResultSet::GetTableName(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2cbf): undefined reference to `wxSQLite3ResultSet::GetDatabaseName(int)'

Objects/MingW/minimal.o:minimal.cpp:(.text+0x2f3e): undefined reference to `wxSQLite3ResultSet::GetColumnCount()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x2f77): undefined reference to `wxSQLite3ResultSet::GetDeclaredColumnType(int)'

Objects/MingW/minimal.o:minimal.cpp:(.text+0x2fad): undefined reference to `wxSQLite3ResultSet::GetColumnName(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3082): undefined reference to `wxSQLite3ResultSet::NextRow()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x30af): undefined reference to `wxSQLite3ResultSet::GetInt(int, int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3177): undefined reference to `wxSQLite3ResultSet::GetString(int, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3220): undefined reference to `wxSQLite3ResultSet::GetSQL()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x32c8): undefined reference to `wxSQLite3StatementBuffer::wxSQLite3StatementBuffer()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x32f3): undefined reference to `wxSQLite3StatementBuffer::Format(char const*, ...)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3329): undefined reference to `wxSQLite3Database::ExecuteUpdate(wxSQLite3StatementBuffer const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3346): undefined reference to `wxSQLite3StatementBuffer::Format(char const*, ...)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3376): undefined reference to `wxSQLite3Database::ExecuteUpdate(wxSQLite3StatementBuffer const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x33b6): undefined reference to `wxSQLite3Database::GetTable(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x33da): undefined reference to `wxSQLite3Table::GetColumnCount()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3413): undefined reference to `wxSQLite3Table::GetColumnName(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x34ac): undefined reference to `wxSQLite3Table::GetRowCount()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x34db): undefined reference to `wxSQLite3Table::SetRow(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x34fc): undefined reference to `wxSQLite3Table::GetColumnCount()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x352b): undefined reference to `wxSQLite3Table::IsNull(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3558): undefined reference to `wxSQLite3Table::GetAsString(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x35e1): undefined reference to `wxSQLite3Table::GetDouble(int, double)'

Objects/MingW/minimal.o:minimal.cpp:(.text+0x36ac): undefined reference to `wxSQLite3Database::CreateFunction(wxString const&, int, wxSQLite3AggregateFunction&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x371e): undefined reference to `wxSQLite3Database::ExecuteQuery(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x373a): undefined reference to `wxSQLite3ResultSet::NextRow()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x37b0): undefined reference to `wxSQLite3ResultSet::GetString(int, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3893): undefined reference to `wxSQLite3Database::CreateFunction(wxString const&, int, wxSQLite3ScalarFunction&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3905): undefined reference to `wxSQLite3Database::ExecuteQuery(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3921): undefined reference to `wxSQLite3ResultSet::NextRow()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3992): undefined reference to `wxSQLite3ResultSet::GetString(int, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3a54): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3a91): undefined reference to `wxSQLite3Database::PrepareStatement(char const*)'

Objects/MingW/minimal.o:minimal.cpp:(.text+0x3ac9): undefined reference to `wxSQLite3Statement::Bind(int, unsigned char const*, int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3ad7): undefined reference to `wxSQLite3Statement::ExecuteUpdate()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3b26): undefined reference to `wxSQLite3Database::ExecuteQuery(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3b4c): undefined reference to `wxSQLite3ResultSet::operator=(wxSQLite3ResultSet const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3b65): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3b73): undefined reference to `wxSQLite3ResultSet::NextRow()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3c60): undefined reference to `wxSQLite3ResultSet::Finalize()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3c75): undefined reference to `wxSQLite3Database::SetAuthorizer(wxSQLite3Authorizer&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3d06): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3d1d): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3d43): undefined reference to `wxSQLite3Database::Begin(wxSQLite3TransactionType)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3d64): undefined reference to `wxSQLite3Database::PrepareStatement(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3dcc): undefined reference to `wxSQLite3Statement::Bind(int, int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3ded): undefined reference to `wxSQLite3Statement::Bind(int, char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3e14): undefined reference to `wxSQLite3Statement::Bind(int, double)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3e1c): undefined reference to `wxSQLite3Statement::ExecuteUpdate()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3e24): undefined reference to `wxSQLite3Statement::Reset()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3ec0): undefined reference to `wxSQLite3ResultSet::GetBlob(wxString const&, int&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x3fef): undefined reference to `wxSQLite3Database::Commit()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4018): undefined reference to `wxSQLite3Database::ExecuteScalar(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x412a): undefined reference to `wxSQLite3Database::SetCollation(wxString const&, wxSQLite3Collation*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x416d): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4184): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x419b): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x41b2): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x41cd): undefined reference to `wxSQLite3Database::ExecuteQuery(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x41e9): undefined reference to `wxSQLite3ResultSet::NextRow()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x425f): undefined reference to `wxSQLite3ResultSet::GetString(int, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x42ea): undefined reference to `wxSQLite3Database::HasBackupSupport()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x431c): undefined reference to `wxSQLite3Database::HasEncryptionSupport()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4404): undefined reference to `wxSQLite3Database::Backup(wxString const&, wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x44bd): undefined reference to `wxSQLite3Database::HasEncryptionSupport()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x45b1): undefined reference to `wxSQLite3Database::Restore(wxString const&, wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4675): undefined reference to `wxSQLite3Database::HasEncryptionSupport()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4701): undefined reference to `wxSQLite3Database::ReKey(wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4732): undefined reference to `wxSQLite3Database::HasIncrementalBlobSupport()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4776): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x478d): undefined reference to `wxSQLite3Database::ExecuteUpdate(char const*)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x487c): undefined reference to `wxSQLite3Database::GetWritableBlob(wxLongLongNative, wxString const&, wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x48fb): undefined reference to `wxSQLite3Blob::GetSize()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x49e6): undefined reference to `wxSQLite3Blob::Write(wxMemoryBuffer const&, int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x49f4): undefined reference to `wxSQLite3Blob::Finalize()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4ae3): undefined reference to `wxSQLite3Database::GetReadOnlyBlob(wxLongLongNative, wxString const&, wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4b03): undefined reference to `wxSQLite3Blob::operator=(wxSQLite3Blob const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4b1c): undefined reference to `wxSQLite3Blob::~wxSQLite3Blob()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4bbc): undefined reference to `wxSQLite3Blob::Read(wxMemoryBuffer&, int, int)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4bca): undefined reference to `wxSQLite3Blob::Finalize()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4cf6): undefined reference to `wxSQLite3Blob::~wxSQLite3Blob()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4d4d): undefined reference to `wxSQLite3Database::LimitTypeToString(wxSQLite3LimitType)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4da0): undefined reference to `wxSQLite3Database::GetLimit(wxSQLite3LimitType)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4e84): undefined reference to `wxSQLite3Database::ShutdownSQLite()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4e9d): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4eb6): undefined reference to `wxSQLite3Statement::~wxSQLite3Statement()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4ecf): undefined reference to `wxSQLite3Statement::~wxSQLite3Statement()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4ee8): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4f01): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4f1a): undefined reference to `wxSQLite3Table::~wxSQLite3Table()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4f33): undefined reference to `wxSQLite3StatementBuffer::~wxSQLite3StatementBuffer()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4f4c): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4f65): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x4fb8): undefined reference to `wxSQLite3Database::~wxSQLite3Database()'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x50d4): undefined reference to `wxSQLite3Database::Backup(wxString const&, wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x520f): undefined reference to `wxSQLite3Database::Restore(wxString const&, wxString const&, wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text+0x6039): undefined reference to `wxSQLite3ResultSet::~wxSQLite3ResultSet()'
Objects/MingW/minimal.o:minimal.cpp:(.text$_ZN19MyAggregateFunction9AggregateER24wxSQLite3FunctionContext[MyAggregateFunction::Aggregate(wxSQLite3FunctionContext&)]+0x52): undefined reference to `wxSQLite3FunctionContext::GetAggregateStruct(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text$_ZN19MyAggregateFunction9AggregateER24wxSQLite3FunctionContext[MyAggregateFunction::Aggregate(wxSQLite3FunctionContext&)]+0x78): undefined reference to `wxSQLite3FunctionContext::GetArgCount()'

Objects/MingW/minimal.o:minimal.cpp:(.text$_ZN19MyAggregateFunction9AggregateER24wxSQLite3FunctionContext[MyAggregateFunction::Aggregate(wxSQLite3FunctionContext&)]+0xe7): undefined reference to `wxSQLite3FunctionContext::GetString(int, wxString const&)'

Objects/MingW/minimal.o:minimal.cpp:(.text$_ZN12MyAuthorizer9AuthorizeEN19wxSQLite3Authorizer19wxAuthorizationCodeERK8wxStringS4_S4_S4_[MyAuthorizer::Authorize(wxSQLite3Authorizer::wxAuthorizationCode, wxString const&, wxString const&, wxString const&, wxString const&)]+0x6c): undefined reference to `wxSQLite3Authorizer::AuthorizationCodeToString(wxSQLite3Authorizer::wxAuthorizationCode)'
Objects/MingW/minimal.o:minimal.cpp:(.text$_ZN19MyAggregateFunction8FinalizeER24wxSQLite3FunctionContext[MyAggregateFunction::Finalize(wxSQLite3FunctionContext&)]+0x1f): undefined reference to `wxSQLite3FunctionContext::GetAggregateStruct(int)'
Objects/MingW/minimal.o:minimal.cpp:(.text$_ZN19MyAggregateFunction8FinalizeER24wxSQLite3FunctionContext[MyAggregateFunction::Finalize(wxSQLite3FunctionContext&)]+0x2f): undefined reference to `wxSQLite3FunctionContext::SetResult(wxString const&)'
Objects/MingW/minimal.o:minimal.cpp:(.text$_ZN19MyAggregateFunction8FinalizeER24wxSQLite3FunctionContext[MyAggregateFunction::Finalize(wxSQLite3FunctionContext&)]+0x4e): undefined reference to `wxSQLite3FunctionContext::GetAggregateCount()'
collect2: ld returned 1 exit status

mingw32-make.exe: *** [Output/MingW/testWxSqlite3.exe] Error 1

Execution terminated
Compilation Failed. Make returned 2

Regards,
Sam

utelle
Moderator
Moderator
Posts: 940
Joined: Tue Jul 05, 2005 10:00 pm
Location: Cologne, Germany
Contact:

Re: wxSqlite3 issue

Post by utelle » Sun May 31, 2009 10:25 am

samsam598 wrote:Read the another thread mentioned that wxSqlite was built on wxWidgets2.8.9.
Well, the error messages you showed us before in this thread were produced by using wxWidgets 2.9. Usually you can't mix libraries based on different wxWidgets versions.
samsam598 wrote:In my pc wxDev-cpp contains wxWidgets2.8.9 ,I tried to compile the sample this time use wxDev-cpp +mingw3.4.5:
This shouldn't be a problem. wxSQLite3 is known to work with wxWidgets 2.8.x.
samsam598 wrote:Compiler: Default GCC compiler
Building Makefile: "F:\CodeBlocksProject\samples\Makefile.win"
[...]
g++.exe Objects/MingW/minimal.o -o "Output\MingW\testWxSqlite3.exe" -L"C:/Dev-Cpp/Lib" -L"F:/CodeBlocksProject/samples/lib" -mwindows -lwxmsw28 -lwxmsw28_gl -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregex -lwxexpat -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lodbc32 -lopengl32 lib/sqlite3.a lib/sqlite3.lib wxSqlite3.a

Objects/MingW/minimal.o:minimal.cpp:(.text+0xbc): undefined reference to `wxSQLite3Database::wxSQLite3Database()'
[...]
collect2: ld returned 1 exit status

mingw32-make.exe: *** [Output/MingW/testWxSqlite3.exe] Error 1

Execution terminated
Compilation Failed. Make returned 2
Although I don't use mingw myself I suspect that the command line for the linker is not correct. The linker does not find the wxSQLite3 library ... and I don't see a "-lwxSQLite3" or similar on the command line. So I guess you have to add it. It must be specified before the wxWidgets libraries otherwise you'll get again missing references.

Regards,

Ulrich

samsam598
Super wx Problem Solver
Super wx Problem Solver
Posts: 324
Joined: Mon Oct 06, 2008 12:55 pm

Re: wxSqlite3 issue

Post by samsam598 » Tue Jun 02, 2009 12:50 am

samsam598 wrote:In my pc wxDev-cpp contains wxWidgets2.8.9 ,I tried to compile the sample this time use wxDev-cpp +mingw3.4.5:
This shouldn't be a problem. wxSQLite3 is known to work with wxWidgets 2.8.x.
]

Thank you again for all your help.I have tried my best but still failed.I think maybe this is an issue of multi-compilers & linkers installed in my pc.I will uninstall some of them and try later.

Regards,
Sam

Big_Lebowski
Knows some wx things
Knows some wx things
Posts: 49
Joined: Wed May 13, 2009 8:08 am

Re: wxSqlite3 issue

Post by Big_Lebowski » Tue Jun 02, 2009 11:52 am

utelle wrote: ........ For GUI projects you might get some inspirations from this project: http://code.google.com/p/wxquickrun/.........
Regards,
Ulrich
I have been trying to build that project several times, but failed.

If you have Visual C++ Express Edition, CodeBlocks or DevC++ you won't be able to build it, cause it takes ATL library that is part of Microsoft Visual Studio 2008 Pro.

Ulrich, wxSQLite3 is wonderful! Thank you for your job.

utelle
Moderator
Moderator
Posts: 940
Joined: Tue Jul 05, 2005 10:00 pm
Location: Cologne, Germany
Contact:

Re: wxSqlite3 issue

Post by utelle » Tue Jun 02, 2009 1:15 pm

Big_Lebowski wrote:
utelle wrote: ........ For GUI projects you might get some inspirations from this project: http://code.google.com/p/wxquickrun/
I have been trying to build that project several times, but failed.

If you have Visual C++ Express Edition, CodeBlocks or DevC++ you won't be able to build it, cause it takes ATL library that is part of Microsoft Visual Studio 2008 Pro.
That's a pity. I have to admit I haven't tried to build the application myself but only mentioned it here since it's a GUI application using wxSQLite3. Inspecting the source code might still serve the purpose to see how to use wxSQLite3 in a GUI context.

Of course I use wxSQLite3 myself in GUI applications but none of those is simple and small enough to serve as a GUI sample application and I didn't have had the time to write one specifically for the wxSQLite3 distribution.
Big_Lebowski wrote:Ulrich, wxSQLite3 is wonderful! Thank you for your job.
Thanks. :-)

Regards,

Ulrich

samsam598
Super wx Problem Solver
Super wx Problem Solver
Posts: 324
Joined: Mon Oct 06, 2008 12:55 pm

Post by samsam598 » Thu Aug 13, 2009 2:30 am

I downloaded sqlite3 single source (version 3.6.17) and include all of them( 2 heads,one source) into wxSqlite relative folder(replace the exsiting one),now nothing else is needed to build my own program,no need sqlite.lib,sqlite.dll ,nothing.WOW~~

Regards,
Sam
Regards,
Sam
-------------------------------------------------------------------
Windows xp
VS.Net 2003/MinGW 3.4.5 C::B character set: UTF-8
wxWidgets github 3.0 RC1 Unicode Static build,Unicode Shared build.

Post Reply