Author Topic: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted  (Read 1171 times)

Offline stahta01

  • Lives here!
  • ****
  • Posts: 7298
    • My Best Post
MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« on: July 06, 2022, 05:37:04 pm »
I have submitted an PR for MSys2 MinGW64 wxWidgets 3.2.0RC1.

https://github.com/msys2/MINGW-packages/pull/12007

Finished binaries here https://github.com/msys2/MINGW-packages/actions/runs/2623689345#artifacts

Tim S.
« Last Edit: July 06, 2022, 08:57:29 pm by stahta01 »
C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 32 bit.
On Debian Stretch, compiling CB Trunk against wxWidgets 3.0.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5630
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #1 on: July 07, 2022, 04:07:47 am »
Good work!

Hopefully it will arrive in official msys2's pacman repo soon.
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5630
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #2 on: July 07, 2022, 04:19:52 am »
I see that the 3.2.0 is released now.


wxWidgets 3.2.0 Released - wxWidgets

 :)
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline gd_on

  • Lives here!
  • ****
  • Posts: 732
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #3 on: July 07, 2022, 08:50:27 pm »
I have tried this new 3.2.0 version, but I can't compile C::B with it, even with a full rebuild : several unresolved references to WXReservedxxxxx. With 3.2.0 Rc1 there was not this problem. Comparing the wxWidgets sources (rc1 and official), there are effectively some WXReservedxxx which have been introduced since rc1. I have compiled myself wxWidgets and C::B, as usually. May be, I'm doiing something wrong, but I don't know where...
« Last Edit: July 07, 2022, 08:52:52 pm by gd_on »
Windows 10 64 bits (21H2), svn C::B (last version or almost!), wxWidgets 3.2.1, Msys2 Compilers 12.2.0, 64 bits (seh, posix : gcc, g++ and gfortran in C:\msys64\mingw64) or 32 bits (dwarf2, posix  in C:\msys64\mingw32).

Offline AndrewCot

  • Plugin developer
  • Lives here!
  • ****
  • Posts: 652
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #4 on: July 08, 2022, 03:03:13 am »
I have successfully built wx3.2.0 on Windows and Mac using the same process used for 3.1.7.
I have successfully built C::B using wx3.2.0 on Windows and Mac using the same process used for 3.1.7 (*).  Where (*) excludes the updates for the devel31 & .objs31 & output31 direcptory changes and the wxwidget directory name change to grab the DLL's from and the wxwidget DLL name change (31 to 32).
I have not tried to build wxwidget 3.2.0 on linux yet.

Info from the resulting C::B is:
Name                                       : Code::Blocks
Version                                    : svn-r12846
App Version                                : svn build
Platform                                   : Windows
AppWXAnsiUnicode                           : unicode
AppActualVersionVerb                       : svn build  rev 12846
Build                                      : Jul  7 2022, 21:05:15 - wx3.2.0 - gcc 12.1.0 (Windows, unicode) - 64 bit
Code::Blocks Executable                    : C:\Program Files\CodeBlocks_Experimental\CodeBlocks.exe

SDK Version                                : 2.19.0
Scintilla Version                          : 3.7.5
wxWidget version                           : wxWidgets 3.2
wxWidget description                       : - - - - - - -
                                           : wxWidgets Library (wxMSW port)
                                           : Version 3.2.0 (Unicode: wchar_t, debug level: 1),
                                           : compiled at Jul  7 2022 17:46:22
                                           : Runtime version of toolkit used is 10.0.
                                           : - - - - - - -





Offline AndrewCot

  • Plugin developer
  • Lives here!
  • ****
  • Posts: 652
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #5 on: July 08, 2022, 03:57:42 am »
Just successfully built wxWidgets 3.2.0 and C::B using wxWidgets 3.2.0 on Linux. C::B starts up and runs.

Linux C::B info:
Build                                             : Jul  8 2022, 11:42:12 - wx3.2.0 - gcc 11.1.0 (Linux, unicode) - 64 bit
Code::Blocks Executable                           : /mnt/d/Andrew_Development/Work_Installers/CodeBLocks_Private_Experimental_GCC/src/devel32/bin/CodeBlocks

SDK Version                                       : 2.19.0
Scintilla Version                                 : 3.7.5
wxWidget version                                  : wxWidgets 3.2
wxWidget description                              : - - - - - - -
                                                  : wxWidgets Library (wxGTK port)
                                                  : Version 3.2.0 (Unicode: wchar_t, debug level: 1),
                                                  : compiled at Jul  8 2022 11:27:42
                                                  : Runtime version of toolkit used is 3.24.
                                                  : Compile-time GTK+ version is 3.24.20.
                                                  : - - - - - - -


Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5630
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #6 on: July 08, 2022, 03:35:52 pm »
Here is what I did for building codeblocks against wx 3.2.0 library under 64bit Windows.

I just replace all the text in the *wx31_64.cbp files

Code
			<Variable name="WX_VERSION" value="31" />

to

Code
			<Variable name="WX_VERSION" value="32" />

Then, I just build the CodeBlocks_wx31_64.workspace as I did before against wx 3.1.7 library.

 :)
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline gd_on

  • Lives here!
  • ****
  • Posts: 732
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #7 on: July 08, 2022, 04:23:11 pm »
That was my problem : I compiled C::B with wxWidgets 3.2.0 but at link time, it was tle 3.1.7 libs which was used in my tests. So of course, WXReservedxxx were missing.
Now it works. Thanks.
If I remember, AndrewCot suggested (and do this in his own build, I think) to make at least this "value" parameter as a global variable or something like that. Could be a nice improvment in the C::B build system.
Windows 10 64 bits (21H2), svn C::B (last version or almost!), wxWidgets 3.2.1, Msys2 Compilers 12.2.0, 64 bits (seh, posix : gcc, g++ and gfortran in C:\msys64\mingw64) or 32 bits (dwarf2, posix  in C:\msys64\mingw32).

Offline AndrewCot

  • Plugin developer
  • Lives here!
  • ****
  • Posts: 652
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #8 on: July 09, 2022, 01:36:01 am »
I have made all of the wxWidget variables into global variables and this is why I did not have to change any project files moving from 3.1.5 to 3.1.7 an then to 3.2.0. If you want to check out the project files have a look at the following repo:
 https://github.com/acotty/CodeBlocks_Unofficial_Testing
I have saved the global variables I used when I was using wxWidgets 3.1.5 in the following file, so you can see what they are instead of looking at the project file if you want to see what IMHO needs to be made global so it can be changed in one place instead of in the project files via one of the plugins or manually.
    https://github.com/acotty/CodeBlocks_Unofficial_Testing/blob/master/Build_Helper_Files/CB_GlobalVariables.xml
In the git repo has the following in it:
  • Only one set of project files for each OS.
  • On Windows the one set of project files can be configured to build 32 or 64 bit and different wxWidget versions and specify the C and C++ standards.
  • All of the patches I have submitted
  • additional plugins that I though I may use
  • the DAP debugger I am working on
  • My latest C:B build docs
  • Batch and script files to make building C::B , running C::B and cleaning the directory tree
  • Updated NSIS installer so you can make installer exe when you want to via a batch file
  • Ability to build via project files on the MaC that helps debugging as then you can debug C::B from C::B.
  • Ability to build via github actions
  • Github workflow fiels for all three OS's that can be used to build C::B on various git triggers
  • A controversial one I have passed the CPP and H files through Astyle using the astyle.ini file in the root directory so the files are consistent.

Offline everSome

  • Multiple posting newcomer
  • *
  • Posts: 17
Re: MSys2 MinGW64 wxWidgets PR for 3.2.0RC1 submitted
« Reply #9 on: September 02, 2022, 11:19:46 pm »
Also, if you want to use a debug version of wxWidgets in CodeBlocks, in an MSYS2 bash shell, you can just:
find . -name '*31_64.cbp' -exec sed -i 's/name="WX_SUFFIX" value="u"/name="WX_SUFFIX" value="ud"/' {} \;
Of course you'll have to grab
wxmsw32ud_gcc_custom.dll
in stead of
wxmsw32u_gcc_custom.dll
out of lib/gcc_dll and plunk it down in src/devel31_64

Change 31_64 to 32_64 if using the new 3.2 .cpb files.

P.S. mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=1 BUILD=debug
creates a debug version.
« Last Edit: September 02, 2022, 11:21:33 pm by everSome »