eranif / wx-config-msys2 Goto Github PK
View Code? Open in Web Editor NEWwx-config tool for MSYS2 based installation of wxWidgets using the mingw64 repository
License: MIT License
wx-config tool for MSYS2 based installation of wxWidgets using the mingw64 repository
License: MIT License
Hi, I have found a small bug.
When I use a monolithic debug version of wx 3.2 I built under MinGW64/GCC, I have enabled the OpenGL, when I add the gl
option, I see the linker option -lwxmsw32ud_gl
is not generated. The linker option -lwxmsw32ud
is generated correctly.
Hi, eranif, thanks for the good tool!
I'm not sure if it could have an option for me to select the wx version? For me, both wx 3.1 and wx 3.0 libraries in my msys2's mingw-w64 suite.
Thanks
Hi, I'm trying to build this without much luck. It's probably a configuration problem, but when I follow along step by step, this is the result at the make step...
geoffrey@Grunter MSYS /d/dev/repos/wx-config-msys2/build-release
$ mingw32-make -j24
[ 50%] Building CXX object src/CMakeFiles/wx-config-msys2.dir/wx-config-msys2.cpp.o
D:\Dev\Repos\wx-config-msys2\src\wx-config-msys2.cpp:1:10: fatal error: 'filesystem' file not found
#include <filesystem>
^~~~~~~~~~~~
1 error generated.
mingw32-make[2]: *** [src\CMakeFiles\wx-config-msys2.dir\build.make:75: src/CMakeFiles/wx-config-msys2.dir/wx-config-msys2.cpp.o] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:97: src/CMakeFiles/wx-config-msys2.dir/all] Error 2
mingw32-make: *** [Makefile:90: all] Error 2
Any advice?
D:\code\wx-config-msys2\bin>wx-config-msys2 --libs=all --prefix=F:\msys2\mingw64
-LF:/msys2/mingw64/lib -pipe -lwx_mswu_aui-3.1 -lwx_mswu_html-3.1 -lwx_mswu_qa-3.1 -lwx_mswu_core-3.1 -lwx_baseu_net-3.1 -lwx_mswu_xrc-3.1 -lwx_baseu_xml-3.1 -lwx_baseu-3.1
Is it expected?
This works OK in a 2021.06.24 version.
Hi, eranif.
If I use the command
wx-config-msys2 --cflags --prefix=$(TARGET_COMPILER_DIR) --debug
I got the -O0
option, if no --debug
is specified, I got the -O2
option.
While, I just compared with other tools, such as the pkg-config
under msys2
# pkg-config --cflags opencv4
-IF:/msys2/mingw64/include/opencv4
It does not generate the -O
like options. The issue here is that I have already configured the '-O` like option in other field inside the Code::Blocks' build options.
What do you think about this issue, thanks.
I try to use this tool inside C::B, and I see it generate such command line:
-LF:\code\msys2-64\mingw64\\lib
, note there is a \\
in the command line if I set the command as:
wx-config-msys2 --libs --prefix=$(TARGET_COMPILER_DIR)
Because inside C::B, the $(TARGET_COMPILER_DIR)
is translated to F:\code\msys2-64\mingw64\
, which means it has a backslash at the end.
See discussion below:
Re: RFC: Backticks
Thanks.
I installed Msys2 required packages, and followed your tutorial to build this tool. Now, how do I compile a simple program via command line?
Hi, when trying to build the splash wx sample code.
See my wx sample projects using wx-config-msys2.exe
and code::blocks
https://github.com/asmwarrior/cb_projects_for_wxWidgets
I try to use this linker option:
`$(#WX_CONFIG) --libs std,media`
But this does not include the necessary media library, so I have to manually add a library name to linker option to workaround this:
`$(#WX_CONFIG) --libs std,media`
-lwx_mswu_media-3.2
So, can you have this "media" keyword support? Thanks.
In the homepage, it still uses 3.1, so I think you can update it.
Hi, eranif, somethings, I see there are many wx-config-msys2.exe in my PC, and I need to know which is the latest version.
So, can you have a version number shown in the command line when I run wx-config-msys2.exe
?
Thanks.
Hi, I have local wx library build myself, both release and debug libs, they are built from:
mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=1 VENDOR=cb
mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=1 BUILD=debug UNICODE=1 VENDOR=cb
Now, I have several libs in the folder: F:\code\wxWidgets-3.2.1\lib\gcc_dll
libwxmsw32ud.a
libwxmsw32u.a
Now, here is the result from wx-config.exe:
F:\code\wxWidgets-3.2.1\build\msw>wx-config.exe --prefix=F:/code/wxWidgets-3.2.1 --wxcfg=gcc_dll/mswud --debug --libs
-LF:/code/wxWidgets-3.2.1/lib/gcc_dll -pipe -lwxmsw32u
F:\code\wxWidgets-3.2.1\build\msw>wx-config.exe --prefix=F:/code/wxWidgets-3.2.1 --wxcfg=gcc_dll/mswu --debug --libs
-LF:/code/wxWidgets-3.2.1/lib/gcc_dll -pipe -lwxmsw32u
F:\code\wxWidgets-3.2.1\build\msw>wx-config.exe --prefix=F:/code/wxWidgets-3.2.1 --wxcfg=gcc_dll/mswud --libs
-LF:/code/wxWidgets-3.2.1/lib/gcc_dll -pipe -lwxmsw32u
F:\code\wxWidgets-3.2.1\build\msw>wx-config.exe --prefix=F:/code/wxWidgets-3.2.1 --wxcfg=gcc_dll/mswu --libs
-LF:/code/wxWidgets-3.2.1/lib/gcc_dll -pipe -lwxmsw32u
It looks like the --debug
option does not change the library to -lwxmsw32ud
.
If I enabled the option --wxcfg=gcc_dll/mswud
, still the release library is used.
The expect way should be: when the option --wxcfg=gcc_dll/mswud
is used, do we need to link the -lwxmsw32ud ? (the debug library has "d" suffix)
Thanks.
Hi, I start the shell by double click the mingw64.exe
under the msys2.
In the front page, there are some steps:
mkdir build-debug
cd build-debug
cmake .. -G"MinGW Makefiles"
make -j24
Now, I see the final stage of the build step should be:
# mingw32-make
[ 50%] Building CXX object src/CMakeFiles/wx-config-msys2.dir/wx-config-msys2.cpp.obj
[100%] Linking CXX executable ..\..\bin\wx-config-msys2.exe
[100%] Built target wx-config-msys2
I see I don't have make
command under this shell.
wx-config-msys2.exe --prefix=C:/msys64/mingw64 --libs std,stc
Fails to list "-lwx_mswu_stc-3.0" in library list
Tim S.
./wx-config-msys2.exe --prefix=C:/msys64/mingw64 --libs std,stc -LC:/msys64/mingw64\lib -pipe -Wl,--subsystem,windows -mwindows -lwx_mswu_xrc-3.0 -lwx_mswu_html-3.0 -lwx_mswu_qa-3.0 -lwx_mswu_core-3.0 -lwx_baseu_xml-3.0 -lwx_baseu_net-3.0 -lwx_baseu-3.0
As compared to
wx-config --libs std,stc -LC:/msys64/mingw64/lib -pipe -Wl,--dynamicbase,--high-entropy-va,--nxcompat,--default-image-base-high -Wl,--subsystem,windows -mwindows -lwx_mswu_stc-3.0 -lwx_mswu_xrc-3.0 -lwx_mswu_webview-3.0 -lwx_mswu_html-3.0 -lwx_mswu_qa-3.0 -lwx_mswu_adv-3.0 -lwx_mswu_core-3.0 -lwx_baseu_xml-3.0 -lwx_baseu_net-3.0 -lwx_baseu-3.0
Hi, I would expect that the "adv" library should be in the list the of available libraries.
For a more detailed info, I just looked at the file: msys2_root\mingw64\lib\wx\config\msw-unicode-3.0, here is libraries listed in this file
xrc webview stc richtext ribbon propgrid aui gl html qa adv core xml net base
Thanks.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.