User forums > Help
SVN 12550 does not compile
ollydbg:
--- Quote from: BlueHazzard on December 12, 2021, 12:58:48 am ---I can not build codeblocks with pch enabled....
I use the latest winlibs compiler (gcc11) and cc1plus.exe crashes every time i try to build codeblocks with pch enabled:
--- Code: ---cc1plus.exe caused an Access Violation at location 00007FF6BF009080 in module cc1plus.exe Reading from location 0000000011800F14.
AddrPC Params
00007FF6BF009080 000002A924CBA480 0000000000000000 0000000000000001 cc1plus.exe!0x7ff601119080
00007FF6BF0098F4 00000000000000D0 00007FF6BEFE7096 000002A926640000 cc1plus.exe!0x7ff6011198f4
00007FF6BEFDF0D6 0000000000000000 0000000000000000 0000000000000000 cc1plus.exe!0x7ff6010ef0d6
00007FF6BDF89F5D 000002A926642680 000000B0829FDE50 000002A924E102D0 cc1plus.exe!0x7ff600099f5d
00007FF6BEFDE1FC 000000B0829FDF10 00007FFC00000000 0000000000000000 cc1plus.exe!0x7ff6010ee1fc
00007FF6BEFDE7ED 000000B0829FE9B0 000000000000E000 0000000000AA000A cc1plus.exe!0x7ff6010ee7ed
00007FF6BEFDEE19 00007FF60000000B 00007FF6BF775240 0000000000000008 cc1plus.exe!0x7ff6010eee19
00007FF6BE581E8A 00007FF6BF812054 0000000000000000 0000000000000000 cc1plus.exe!0x7ff600691e8a
00007FF6BF068A23 000000B0829FE080 00007FF6BDEF0000 000000B0829FE130 cc1plus.exe!0x7ff601178a23
00007FFC19560E10 0000000000000000 000000B0829FE630 000000B0829FECF0 ucrtbase.dll!__C_specific_handler
00007FFC1B9920CF 0000000000000000 000000B0829FE630 000000B0829FECF0 ntdll.dll!RtlpExecuteHandlerForException
00007FFC1B941454 0000000000000000 0000000000000000 00000000000002A0 ntdll.dll!RtlDispatchException
00007FFC1B990BFE 0000000000000000 0000000000000000 000002A924C20150 ntdll.dll!KiUserExceptionDispatch
00007FF6BF009080 000002A924CBA480 0000000000000000 0000000000000000 cc1plus.exe!0x7ff601119080
00007FF6BF0098F4 000002A924C28D24 000002A924C20150 000000000000000A cc1plus.exe!0x7ff6011198f4
00007FF6BEFDF0D6 0000000000000000 0000000000000000 0000000000000000 cc1plus.exe!0x7ff6010ef0d6
00007FF6BDF89F5D 0000000000000000 000000B0829FF1F0 0000000000000003 cc1plus.exe!0x7ff600099f5d
00007FF6BEFDE1FC 000000B0829FF2B0 0000000000000000 000002A9267D3D70 cc1plus.exe!0x7ff6010ee1fc
00007FF6BEFDE7ED 0000000000000008 00007FFC19538091 000002A924CB1B80 cc1plus.exe!0x7ff6010ee7ed
00007FF6BEFDFD4A 000002A924CBE5E0 000002A924CBE5E0 0000000000000003 cc1plus.exe!0x7ff6010efd4a
00007FF6BE2EA33F 0000000000000003 00007FF6BF1D96D5 000002A924CBCB50 cc1plus.exe!0x7ff6003fa33f
00007FF6BE11A3EA 0000000000000001 0000000000000000 0000000000000000 cc1plus.exe!0x7ff60022a3ea
00007FF6BEFFF5E1 0000000000000000 0000000500000C80 0000000000000001 cc1plus.exe!0x7ff60110f5e1
00007FF6BEFF76C9 0000000000000001 FFFFDFFEFFFFFDFF 0000000100001A01 cc1plus.exe!0x7ff6011076c9
00007FF6BEFF7C48 0000000000000057 000002A926726680 0000000000000045 cc1plus.exe!0x7ff601107c48
00007FF6BF006969 0000000000000000 000002A9CA0000CA 0000000000000000 cc1plus.exe!0x7ff601116969
00007FF6BF00DE50 000000B0829FF980 000002A924CBCB50 000002A924CBCD18 cc1plus.exe!0x7ff60111de50
00007FF6BE110C8B 000000B0829FF980 000002A924CE5060 00007FF6BF8B98E8 cc1plus.exe!0x7ff600220c8b
00007FF6BDFF167C FFFFFD56DB3C6F20 00007FF6BEFF8E12 00007FF6BFA17258 cc1plus.exe!0x7ff60010167c
00007FF6BE03BEC3 000002A924CAE360 0000000000000025 0000000000000000 cc1plus.exe!0x7ff60014bec3
00007FF6BE119A4F 00007FF6BF162020 00007FF6BFA159A0 000002A924C4D960 cc1plus.exe!0x7ff600229a4f
00007FF6BE582081 000002A924CC5F90 0000000000000025 0000000000000000 cc1plus.exe!0x7ff600692081
00007FF6BF13227A 00007FF6BDEF0000 0000002E00000051 000002A924C3A000 cc1plus.exe!0x7ff60124227a
00007FF6BF15F227 0000000000000051 00007FF6BF8B8008 0000000000000000 cc1plus.exe!0x7ff60126f227
00007FF6BDEF1445 0000000000000000 0000000000000000 0000000000000000 cc1plus.exe!0x7ff600001445
00007FF6BDEF1146 0000000000000000 0000000000000000 0000000000000000 cc1plus.exe!0x7ff600001146
00007FFC1B7A7034 0000000000000000 0000000000000000 0000000000000000 KERNEL32.DLL!BaseThreadInitThunk
00007FFC1B942651 0000000000000000 0000000000000000 0000000000000000 ntdll.dll!RtlUserThreadStart
--- End code ---
--- End quote ---
I'm using msys2's gcc compiler(gcc11). It works OK here. Maybe, the winlibs compiler does not support large pch files very well?
Or, we can ask winlibs author to check this issue?
ollydbg:
--- Quote from: Miguel Gimenez on December 11, 2021, 09:23:00 pm ---Thank you for the changes, they work OK here although I have not tested the compilation times.
I know nothing about precompiled headers, but noted this comment from stahta01:
--- Quote ---FYI: Code::Blocks has in the past 3 years not used the PCH correctly in the contrib projects.
Turning off "-DNOPCH" is a waste of time if the devs refuse to add the location of the PCH to the project search path.
--- End quote ---
--- End quote ---
Yes, I agree with Tim's option. We can fix those issues in our repo.
BlueHazzard:
Can you give me a direction how you compile codeblocks with msys2?
If i use the package for wxWidgets all paths in codeblocks are wrong,
If i compile wxWidgets my self also all paths are wrong.
If i try to compile wxWidgets with mingw32 makefile and msys2 then i am not able to compile it...
ollydbg:
--- Quote from: BlueHazzard on December 12, 2021, 05:54:49 pm ---Can you give me a direction how you compile codeblocks with msys2?
If i use the package for wxWidgets all paths in codeblocks are wrong,
If i compile wxWidgets my self also all paths are wrong.
If i try to compile wxWidgets with mingw32 makefile and msys2 then i am not able to compile it...
--- End quote ---
1, you have to install msys2
2, you need to use the pacman command to install the gcc compiler for mingw64 subsystem. for example:
--- Code: ---pacman -S mingw-w64-x86_64-toolchain
--- End code ---
3, set the gcc's binary folder(in my system, it looks like: "F:\msys2\mingw64\bin" ) to your system's PATH environment
4, download a wx 3.1.5 source, and swith to the build/msw sub folder, (maybe some config file need to be modified to enable the opengl?, I can't remember correctly right now)
5, run the command line:
--- Code: ---mingw32-make -f makefile.gcc USE_XRC=1 SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=1 USE_OPENGL=1 VENDOR=cb CXXFLAGS="-Wno-unused-local-typedefs -Wno-deprecated-declarations -fno-keep-inline-dllexport" > log-release.txt 2>&1
--- End code ---
6, go the the Code::Blocks and open the global variables settings, set the "cb_release_type" and "wx31_64".
7, open the "CodeBlocks_wx31_64.cbp" or "CodeBlocks_wx31_64.workspace" to build.
That's all.
AndrewCot:
Ollybdg,
When I build WxWidget I do not specify the following parameters
USE_XRC=1
USE_OPENGL=1
CXXFLAGS="-Wno-unused-local-typedefs -Wno-deprecated-declarations -fno-keep-inline-dllexport"
The WIKI page ("https://wiki.codeblocks.org/index.php/Compiling_wxWidgets_3.0.0_to_develop_Code::Blocks_(MSW)") has the following options:
mingw32-make -f makefile.gcc USE_XRC=1 SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=1 USE_OPENGL=1 VENDOR=cb CXXFLAGS="-fno-keep-inline-dllexport" >log.txt 2>&1
The codeblocks manual appears to not be up to date as the command line options specified on pages 133 & top of 134 do not specif the VENDOR=cb option!!!
The https://github.com/PBfordev/wxpbguide is different again...
So my question if you get this far is what should the wxWidget options be in order to build WxWidget with the same options as included in the official C::B releases?
BlueHazzard,
If you get stuck or want more info on the process I used the following guide to create the batch file that I use to build WxWidgets 3.1.5 or the github source:
https://github.com/PBfordev/wxpbguide
Attached is the batch file I use to build WxWidgets, it has a bunch of options in the file that allow me to build the debug or release versions, specify the compiler path to use. It also has the option to do a make clean PLUS create/update the setup.h. The batch file also uses power shell to calculate how long the build took, sorry I am still an old school MS batch file user.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version