Build databaselayer with Mingw32 and CodeBlock

Talk here about issues with one of the components hosted at wxCode, or suggest features for it.
Post Reply
albert_col
Earned a small fee
Earned a small fee
Posts: 22
Joined: Fri Nov 17, 2006 2:24 pm
Location: Bogota, Colombia

Build databaselayer with Mingw32 and CodeBlock

Post by albert_col » Sat Aug 09, 2008 3:42 am

When I try to compile with the order
mingw32-make -f makefile.gcc
But it fails when the follow error message:

Code: Select all

----------------------------------------------------------------------------
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
I use wxWidgets-2.8.8, and WXWIN had the correct directory, but I see that not exists the directory wxWidgets-2.8.8\lib\gcc_lib\msw, instead exist wxWidgets-2.8.8\lib\gcc_dll\mswu, this because I use CodeBlock and compile wxWidgets follow build CodeBlocks instructions http://wiki.codeblocks.org/index.php?ti ... y_Cookbook.

In the databaselayer's makefile I not find any references to gcc_dll directory, then how I can used databaselayer with codeblock?
OS: Win XP Pro
wx: 2.8.8
Compiler: CodeBlock & mingw32-gcc-3.4.5, VC 7.1.

FlyingIsFun1217
Super wx Problem Solver
Super wx Problem Solver
Posts: 497
Joined: Mon Nov 06, 2006 9:58 pm

Post by FlyingIsFun1217 » Sat Aug 09, 2008 2:29 pm

----------EDIT---------
Ignore my silliness! Sorry :oops:

FlyingIsFun1217

bone
Experienced Solver
Experienced Solver
Posts: 74
Joined: Fri Nov 30, 2007 10:11 am
Location: Oz

Post by bone » Sat Aug 16, 2008 9:55 am

I use wxWidgets-2.8.8, and WXWIN had the correct directory, but I see that not exists the directory wxWidgets-2.8.8\lib\gcc_lib\msw, instead exist wxWidgets-2.8.8\lib\gcc_dll\mswu
You have compiled wxWidgets using SHARED=1 in your call to make. This will produce dll's.
mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=0 BUILD=debug UNICODE=1

Changing this to SHARED=0 will output static linked libs
mingw32-make -f makefile.gcc SHARED=0 MONOLITHIC=0 BUILD=debug UNICODE=1

Change MONOLITHIC=0 to produce divided multiple libs instead of a monolithic lib.
Change UNICODE=0 to produce ANSI libs.

If you are using the makefile to build Databaselayer then you need to either build wxWidgets to suit the configuration options or change the configuration options in the makefile.
These are some of the options you can change in the makefile.

# Use Unicode build of wxWidgets? [0,1]
WX_UNICODE := 0
# Use debug build of wxWidgets (define __WXDEBUG__)? [0,1]
WX_DEBUG := 1
# Version of the wx library to build against.
WX_VERSION := 28
# Use monolithic build of wxWidgets? [0,1]
WX_MONOLITHIC := 0

28 is the correct version for 2.8.8 so your other options are wrong.

You can also import the databaselayer vc++ project into codeblocks and build it that way. You will still need to set things up with build options and search dirs and linked libs etc.

Cheers

Post Reply