News:

Accounts with zero posts and zero activity during the last months will be deleted periodically to fight SPAM!

Main Menu

Just getting it set up w/wxWidgets...

Started by FlyingIsFun1217, January 28, 2007, 02:48:47 AM

Previous topic - Next topic

FlyingIsFun1217

Hey,

I just downloaded Code::Blocks to see what it was like, and after trying to compile the default wxWidgets program, found out that I needed to download wxWidgets seperately (Yeah, I'm used to wxDev-C++). So thats been done.

Now when I try and compile the project (after changing the wxwidgets version in project->Build options to 2.8.0), I just get a bunch of errors, the first being "wx/setup.h: No such file or directory".

What should I do to be able to fully work with wxWidgets in Code::Blocks? It seems like a great IDE!

Thanks!
FlyingIsFun1217

Pecan

You probably just need to set your global variables.
Bet sure to follow the compiling directions for you OS from
wiki.codeblocks.org.


FlyingIsFun1217

#2
Set global variables? How?

I also assume that when you say to follow the compiling directions for (in my case) Windows that you are talking about compiling wxWidgets (found here, under Building wxWidgets). I tried this, but only ever got errors. Maybe because the version I downloaded came with MinGW?

FlyingIsFun1217

Pecan


Biplab

You can use direct path in place of Global Variable. Use the absolute Path of wx version in the following dialog in the textbox.



For example, in my PC, wx-2.6.3 is kept at C:\wxWidgets-2.6.3 and wx-2.8.0 is kept at C:\wxMSW-2.8.0. Please specify the top level dir. C::B will find out include and lib dir.

Code::Blocks doesn't come with pre-compiled wx libs. You can compile it on your own, or download wxPack (http://wxpack.sourceforge.net). wxPack comes with wx lib compiled with GCC and MSVC. That might be helpful.
Be a part of the solution, not a part of the problem.

FlyingIsFun1217

I believe that wxPack should solve my problem.

Thanks for the help, I'll post my results in a while.

FlyingIsFun1217 :)

FlyingIsFun1217

Ok, I've got all of the bugs worked out, except for one.

Output gives:
"Cannot find -lwxmsw28"

?
Thanks again,
FlyingIsFun1217

Biplab

I think you are trying to use Monolithic build which is unavailable in your system. Uncheck the option wxWidgets is built as monolithic library in the wizard.

Regards,

Biplab

P.S.: If you are not using the newer wizard then please read the following post.

http://forums.next.codeblocks.org/index.php?topic=4768.0
Be a part of the solution, not a part of the problem.

FlyingIsFun1217

Sorry for not posting a reply sooner than I did.
I will try installing it without it being a monolithic build.
As far as the new wizard goes, I have downloaded it and put everything where it goes, but I can't say that I know where to access it within Code::Blocks. Where can it be found, and more importantly, what is it's usefulness?

Thanks!
FlyingIsFun1217

raph

Hi,

after installing the new wxWidgets wizard you can access it by choosing "File"->"New"->"Project"->"wxWidgets project".
What the wizard does is setting up your project to use wxWidgets (e.g. inserting directory search paths, libraries to link to, etc.).
You may as well create an empty project and start wx coding, but then you'll have to configure the project settings to use wxWidgets manually.

FlyingIsFun1217

Does the version of codeblocks being used have to be a nightly? I am currently using the release candidate, and all I get is the normal setup, no dialog.

I'll try reinstalling it...

FlyingIsFun1217

TDragon

[url="https://jmeubank.github.io/tdm-gcc/"]https://jmeubank.github.io/tdm-gcc/[/url] - TDM-GCC compiler suite for Windows (GCC 9.2.0 2020-03-08, 32/64-bit, no extra DLLs)

Biplab

#12
Quote from: TDragon on January 31, 2007, 12:06:33 AM
Quote from: FlyingIsFun1217 on January 30, 2007, 11:26:54 PM
Does the version of codeblocks being used have to be a nightly?
Yes.

It's officially shipped with 31st January 2007's nightly. Please download it and you won't need to install it manually.  :)

Quote from: raph on January 30, 2007, 07:23:01 PM
You may as well create an empty project and start wx coding, but then you'll have to configure the project settings to use wxWidgets manually.

Which project settings are you talking of?? In my PC I've retested it on request from manutd. It's working perfectly. You are only required to add source files to it. But the source you are adding should be properly written.

I'm not sure which type of errors you are getting. But if you face any problem, please post full details. Otherwise don't post such misleading informations.

Just do a simple test. First create a project using the wizard. Later create an empty project using the same wizard. Now add the source files to empty project from first project. Check whether it compiles or not. I strongly believe it will compile.
Be a part of the solution, not a part of the problem.

raph

Quote from: Biplab on January 31, 2007, 01:32:11 AM
Which project settings are you talking of??
I've meant an empty non-wx-wizard project. You have to add wx-libraries and search path, then :)

Biplab

Quote from: raph on January 31, 2007, 02:50:41 PM
Quote from: Biplab on January 31, 2007, 01:32:11 AM
Which project settings are you talking of??
I've meant an empty non-wx-wizard project. You have to add wx-libraries and search path, then :)

Even if you generate empty project, the search path and libraries are automatically added depending upon the your selection. You can select wx config, additional lib even after checking Create Empty project. Whatever you select will be added to the project file.

The procedure remained same. If you request an Empty Project necessary settings, lib will be added but No File will be added to the project.

There is some issues if you select Empty project with PCH support. It's not a bug but due to the mismatch between the way support is added and the way it is used by the users. I'll add a warning to inform the user about Possible Issue that may arise due to this settings.  :)
Be a part of the solution, not a part of the problem.