I just recompiled wxWidgets 3.2.2.1 and CodeBlocks r13320 with GCC 13.2 to make sure everything still works as expected, which it does. Note that I'm running on a Windows 10 system with MSYS2 packaged development software installed.
When I compile wxWidgets, I get .dll files placed in my directory:
C:\msys64\home\YourName\wxWidgets\normal\wxWidgets-3.2.2.1\lib\gcc_dll
As I just use:
C:\msys64\home\YourName\wxWidgets\normal\wxWidgets-3.2.2.1\build\msw\mingw32-make -f makefile.gcc
I only get files generated in the aforementioned gcc_dll directory.
As I basically use a form of codeblocks-code-r13320-trunk\src\CodeBlocks_wx32_64.cbp
wherein:
<Environment>
<Variable name="WX_CFG" value="" />
<Variable name="WX_SUFFIX" value="u" />
<Variable name="WX_VERSION" value="32" />
</Environment>
I've never had to figure out what I'd have to do to support a non-null value for WX_CFG.
From the Project build options Search directories entry:
$(#WX32_64.lib)\gcc_dll$(WX_CFG)\msw$(WX_SUFFIX)
it seems CodeBlocks expects WX_CFG to be used as a suffix to the aforementioned gcc_dll directory name.
FYI, a WX_SUFFIX value of u indicates that wxWidgets was built with Unicode support, which it seems has been the default for a while now. If I remember correctly, they don't recommend one build without such support anymore.
Note that a WX_SUFFIX value of d indicates that this is a debug version, which I force to generate ggdb3 support.
I use the following commands:
time mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=1 USE_OPENGL=0 BUILD=release -j8
time mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=1 USE_OPENGL=0 BUILD=debug -j8
to generate:
wxmsw32u_gcc_custom.dll
wxmsw32ud_gcc_custom.dll
respectively.
To get CodeBlocks to use a debug version of wxWidgeets, I just run the command:
find . -name '*32_64.cbp' -exec sed -i 's/name="WX_SUFFIX" value="u"/name="WX_SUFFIX" value="ud"/' {} \;
Note that makefile.gcc by default also caused two other .dll files witch CodeBlocks does not utilize when compiled with *32_64.cbp files. I think these file names are prefixed with something like wxgtk3, but I've suppressed their generation for quite a while now; so, my memory of that is a little hazy at this point. This suppression is caused by the:
USE_OPENGL=0
option as used above.
As for WX_VERSION values, 3 and 2 are respectively the major and minor release numbers i.e., the first two numbers in "3.2.2.1".