Recent Posts

Pages: 1 [2] 3 4 5 6 7 ... 10
11
Help / Re: code::blocks hangs at startup
« Last post by Miguel Gimenez on May 04, 2026, 09:00:58 pm »
Commit r13841 should fix the issue.

Edit: tested OK on Fedora 44
12
Plugins development / Re: Debugger_gdbmi plugin
« Last post by gd_on on May 04, 2026, 08:04:30 pm »
A few remarks on debugger_gdmi plugin.
I have created a debugger_gdmi folder Inside plugins\contrib and put inside a copy of your git repos.
I have added 3 lines in my CodeBlocks_Windows.workspace as it is for all other plugins.
Code
	<Project filename="plugins/contrib/debugger_gdmi/debugger_gdbmi_Windows.cbp">
<Depends filename="CodeBlocks_Windows.cbp" />
</Project>
Building C::B as usual, produces as previously my C::B version, but containing this time debugger_gdmi.zip and debugger_gdmi.dll at the correct place.

My first debug tries did not work as expected.
I find in your distribution a gdbinit file. It contains a path to print.py, but it does not match a path on my system. I tried to replace this path by the one I have (for example C:\wxWidgets-3.3.2\misc\gdb), but it does not seem to change something. Is this gdbinit file useful ?

Finally, I made it work by avoiding space and/or accentuated characters within the path to my executable. The standard debugger.dll (which uses the same gdb.exe) seems to be more tolerant with that.

Other points to notice :
- with standard debugger, when I open the watches window, all my local variables are displayed. With gdbmi, I have to add one by one an explicit Watch to my local variables. I can then follow the content of my variables step by step when executing.
- at the end of my program, if I try to restart it, while the watches window is still opened, I see my variables, but their content is not updated: 2 solutions here, open new watches on the same variables and I see that only the new ones are updated, or simply rename them but without really changing the name (just clic on return at the end of the variable name).

Last question : can we have both plugins (standard and gdmi) activated ? Or is it better to have only one activated (as for codecompletion and clangd_client) ?
13
Help / Re: debugger_gdbmi
« Last post by Pecan on May 04, 2026, 05:13:47 pm »
Executing codeblocks.exe /d /p CBdevel in output33_64 displayed a message saying wxmsw332u_gcc_custom.dll couldn't be found and reinstalling it might fix the problem. Is there something that I can substitute for it?

go to your ...\wxWidgets332\lib\gcc_dll\ and copy those dll(s) into output33_64.
go to your compiler bin directory (the one you used to compile CodeBlocks) and copy these files to output33_64:
libgcc_s_seh-1.dll
libstdc++-6.dll
libwinpthread-1.dll
14
Help / Re: debugger_gdbmi
« Last post by Frank_CB on May 04, 2026, 08:21:38 am »
Executing codeblocks.exe /d /p CBdevel in output33_64 displayed a message saying wxmsw332u_gcc_custom.dll couldn't be found and reinstalling it might fix the problem. Is there something that I can substitute for it?
15
Help / Re: debugger_gdbmi
« Last post by Frank_CB on May 04, 2026, 03:37:26 am »
This attachment shows source code for C::B svn 14840 from SF.
16
Help / Re: debugger_gdbmi
« Last post by Frank_CB on May 04, 2026, 03:16:55 am »
Thanks for the detailed response. I'll give it a try tomorrow. I was under the impression that debugger_gdbmi needed to be built from a compiled version of C::B
17
Help / Re: debugger_gdbmi
« Last post by Pecan on May 04, 2026, 12:56:53 am »
Tree results in attachment
Whatever that is, it is not the source for codeblocks.
What you showed me is the binary output after compiling codeblocks. It does not contain the CodeBlocks source files.

If you want to compile a plugin, you need to compile it agains the CodeBlocks source code.
You can download the source from https://sourceforge.net/p/codeblocks/code/HEAD/tree/

Look at the upper right to see a button titled "Download Snapshot".
Click that button and it will generate the source code into a zip file. It'll take about two minutes.

Unzip that file into a new folder  named CBdevel.
Copy the downloaded .zip file into CBdevel folder.
Unzip the download .zip file. It'll create a directory named: codeblocks-code-r13840-trunk .
Rename that directory to "trunk" so you won't have to type long folder names.

Start your codeblocks, the one you usually use.
Open the .cbp from "CBdevel\trunk\src\CodeBlocks_wx33_64.cbp"
Click on MainMenu->Build->Rebuild Workspace and wait until it finishes building CodeBlocks.

When it finishes, close down CodeBlocks and open a console (cmd.exe).
In the console type "cd CBdevel\trunk\src\ ".
In the console type "update33_64" . That bat file will copy the .exe and .dll(s) to CBdevel\trunk\src\output33_64 .

Type into the console:
Code
    cd output33_64
    codeblocks.exe /d /p CBdevel

The newly build CodeBlocks should load and run.

From the CodeBlocks top menu, File/Open the following workspace:
"CBdevel\trunk\src\ContribPlugins_wx33_64.workspace". It may take about 5-10 seconds to load.

Once loaded, it will ask you where your wxWidgets 3.3 source resides. Use the three dots to navigate and select the folder containing wxWidgets source code. Click on save.

It will ask for a cb_release type. Enter "-g" into the slot named base  (without the quotes). Click save.
It will ask you for a cb_cpp_std. For me, I enter "-std=c++11" . I think you're using  "-std=c++23". Click save.

For each project in the workspace that you want to use, right click on the project name and select "Rebuild". I choose the following: BrowseTracker, CodeSnippets, DragScroll, KeyBinder, Clangd_client, and SmartIndent.

After all the plugin projects of your choosing have been Rebuilt, close down CodeBlocks.
In the console type "cd CBDevel\trunk\src" . And then "Update33_64.bat" so that CB copies the chosen (now binary plugins) into the correct folders.

Now "cd output33_64" in the console and restart CodeBlocks with "codeblocks.exe /d /p CBdevel" .

Now we're ready to install and compile debugger_gdbmi plugin with your new CodeBlocks.

Make a fresh copy of the debugger_gdbmi plugin frrom https://github.com/pecanh/debugger_gdbmi/releases/tag/%22Nightly_Releases%22 . Click on "Source code (zip)" near the bottom of the page.

In the console, "cd CBdevel\trunk\src\plugins\contribs " and make a new folder named "debugger_gdbmi".

Copy the downloaded zip file (debugger_gdbmi--Nightly_Releases.zip) into the newly create debugger_gdbmi folder. Unzip the .zip file which will have a name like "debugger_gdbmi--Nightly_Releases" with the source in a folder named "src". copy the src directory and all it contents so that the layout of the debugger_gdbmi folder looks like"this:
Code
|───CBdevel
|   |---trunk
|       |---src
|           |---plugins
|               |---contribs                  <-a lot of projects here
|                   |---debugger_gdbmi <-the new folder you create
|                       |───InstallDebuggerMI
|                       |--- .cbp build files
|                       |--- src                <-This folder must be a child of the debugger_gdbmi folder.
|                           |---resources
|                           | ---source files (cpp,h,etc)  <- the actual source files must be in the "src" folder.


Start CodeBlocks if it's not already running.
Check that Setting/compiler/ToolChainExecutables use the same compiler that built CodeBlocks.

With CodeBlocks running, from the main menu File/Open file named:

CBdevel\trunk\src\plugins\contribs\debugger_gdbmi\debugger_gdbmi_wx33_64.cbp
and  Build/rebuild.

Close CodeBlocks.
When the build is successful, go back to the console and from CBdevel\trunk\src run update33_64.bat debugger_gdbmi should now show in plugins when CodeBlocks is restarted.

To run clangd_client you will have to disable the CodeCompletion plugin, enable clangd_client and update its settings.

 
18
Help / Re: debugger_gdbmi
« Last post by Frank_CB on May 03, 2026, 10:02:55 pm »
Tree results in attachment
19
Help / Re: debugger_gdbmi
« Last post by Pecan on May 03, 2026, 09:33:13 pm »
Setting cb_plugin to '.' (without quotes) also fails. Codeblocks issues a warning about not being able to locate the variable. Build log follows:

Code
-------------- Build: default in debugger_gdbmi wx3.3.x (64 bit) (compiler: GNU GCC Compiler)---------------

g++.exe -Wextra -Wall -m64 -g -g -pipe -mthreads -fmessage-length=0 -fexceptions -std=gnu++23 -DHAVE_W32API_H -DBUILDING_PLUGIN -D__WXMSW__ -DWXUSINGDLL -DNOPCH -DwxUSE_UNICODE -D_WIN64 -DCC_NO_COLLAPSE_ITEM -DcbDEBUG -DDOLOGSNIP -g -std=gnu++23 -Ic:\CB13840\..\include -Ic:\CB13840\..\include\tinyxml -Ic:\CB13840\..\sdk\wxscintilla\include -Isrc -IC:\wxWidgets-3.3.2\include -IC:\wxWidgets-3.3.2\lib\gcc_dll\mswu -c C:\Temp\newdir\debugger_gdbmi\src\actions.cpp -o c:\CB13840\..\.obj33_64\plugins\contrib\debugger_gdbmi\src\actions.o
g++.exe -Wextra -Wall -m64 -g -g -pipe -mthreads -fmessage-length=0 -fexceptions -std=gnu++23 -DHAVE_W32API_H -DBUILDING_PLUGIN -D__WXMSW__ -DWXUSINGDLL -DNOPCH -DwxUSE_UNICODE -D_WIN64 -DCC_NO_COLLAPSE_ITEM -DcbDEBUG -DDOLOGSNIP -g -std=gnu++23 -Ic:\CB13840\..\include -Ic:\CB13840\..\include\tinyxml -Ic:\CB13840\..\sdk\wxscintilla\include -Isrc -IC:\wxWidgets-3.3.2\include -IC:\wxWidgets-3.3.2\lib\gcc_dll\mswu -c C:\Temp\newdir\debugger_gdbmi\src\cJSON.cpp -o c:\CB13840\..\.obj33_64\plugins\contrib\debugger_gdbmi\src\cJSON.o
g++.exe -Wextra -Wall -m64 -g -g -pipe -mthreads -fmessage-length=0 -fexceptions -std=gnu++23 -DHAVE_W32API_H -DBUILDING_PLUGIN -D__WXMSW__ -DWXUSINGDLL -DNOPCH -DwxUSE_UNICODE -D_WIN64 -DCC_NO_COLLAPSE_ITEM -DcbDEBUG -DDOLOGSNIP -g -std=gnu++23 -Ic:\CB13840\..\include -Ic:\CB13840\..\include\tinyxml -Ic:\CB13840\..\sdk\wxscintilla\include -Isrc -IC:\wxWidgets-3.3.2\include -IC:\wxWidgets-3.3.2\lib\gcc_dll\mswu -c C:\Temp\newdir\debugger_gdbmi\src\cmd_queue.cpp -o c:\CB13840\..\.obj33_64\plugins\contrib\debugger_gdbmi\src\cmd_queue.o
g++.exe -Wextra -Wall -m64 -g -g -pipe -mthreads -fmessage-length=0 -fexceptions -std=gnu++23 -DHAVE_W32API_H -DBUILDING_PLUGIN -D__WXMSW__ -DWXUSINGDLL -DNOPCH -DwxUSE_UNICODE -D_WIN64 -DCC_NO_COLLAPSE_ITEM -DcbDEBUG -DDOLOGSNIP -g -std=gnu++23 -Ic:\CB13840\..\include -Ic:\CB13840\..\include\tinyxml -Ic:\CB13840\..\sdk\wxscintilla\include -Isrc -IC:\wxWidgets-3.3.2\include -IC:\wxWidgets-3.3.2\lib\gcc_dll\mswu -c C:\Temp\newdir\debugger_gdbmi\src\cmd_result_parser.cpp -o c:\CB13840\..\.obj33_64\plugins\contrib\debugger_gdbmi\src\cmd_result_parser.o
In file included from C:\Temp\newdir\debugger_gdbmi\src\cmd_queue.cpp:1:
C:\Temp\newdir\debugger_gdbmi\src\cmd_queue.h:11:10: fatal error: globals.h: No such file or directory
   11 | #include "globals.h"
      |          ^~~~~~~~~~~
compilation terminated.
Process terminated with status 1 (0 minute(s), 6 second(s))
 
In file included from C:\Temp\newdir\debugger_gdbmi\src\actions.h:6,
                 from C:\Temp\newdir\debugger_gdbmi\src\actions.cpp:1:
C:\Temp\newdir\debugger_gdbmi\src\cmd_queue.h:11:10: fatal error: globals.h: No such file or directory
   11 | #include "globals.h"
      |          ^~~~~~~~~~~
compilation terminated.
Process terminated with status 1 (0 minute(s), 7 second(s))
 
Process terminated with status 0 (0 minute(s), 12 second(s))
2 error(s), 0 warning(s) (0 minute(s), 12 second(s))
 
The problem is not the cb_plugin variable.
The problem is that the .cbp is are not correctly pointing to the CodeBlocks source in your project .cbp.

Do the following:
In a console (cmd.exe) issue the following commands:
Code
cd  c:\CB13840
tree

copy and paste the results here.

20
Help / Re: debugger_gdbmi
« Last post by Frank_CB on May 03, 2026, 08:42:30 pm »
Setting cb_plugin to '.' (without quotes) also fails. Codeblocks issues a warning about not being able to locate the variable. Build log follows:

Code
-------------- Build: default in debugger_gdbmi wx3.3.x (64 bit) (compiler: GNU GCC Compiler)---------------

g++.exe -Wextra -Wall -m64 -g -g -pipe -mthreads -fmessage-length=0 -fexceptions -std=gnu++23 -DHAVE_W32API_H -DBUILDING_PLUGIN -D__WXMSW__ -DWXUSINGDLL -DNOPCH -DwxUSE_UNICODE -D_WIN64 -DCC_NO_COLLAPSE_ITEM -DcbDEBUG -DDOLOGSNIP -g -std=gnu++23 -Ic:\CB13840\..\include -Ic:\CB13840\..\include\tinyxml -Ic:\CB13840\..\sdk\wxscintilla\include -Isrc -IC:\wxWidgets-3.3.2\include -IC:\wxWidgets-3.3.2\lib\gcc_dll\mswu -c C:\Temp\newdir\debugger_gdbmi\src\actions.cpp -o c:\CB13840\..\.obj33_64\plugins\contrib\debugger_gdbmi\src\actions.o
g++.exe -Wextra -Wall -m64 -g -g -pipe -mthreads -fmessage-length=0 -fexceptions -std=gnu++23 -DHAVE_W32API_H -DBUILDING_PLUGIN -D__WXMSW__ -DWXUSINGDLL -DNOPCH -DwxUSE_UNICODE -D_WIN64 -DCC_NO_COLLAPSE_ITEM -DcbDEBUG -DDOLOGSNIP -g -std=gnu++23 -Ic:\CB13840\..\include -Ic:\CB13840\..\include\tinyxml -Ic:\CB13840\..\sdk\wxscintilla\include -Isrc -IC:\wxWidgets-3.3.2\include -IC:\wxWidgets-3.3.2\lib\gcc_dll\mswu -c C:\Temp\newdir\debugger_gdbmi\src\cJSON.cpp -o c:\CB13840\..\.obj33_64\plugins\contrib\debugger_gdbmi\src\cJSON.o
g++.exe -Wextra -Wall -m64 -g -g -pipe -mthreads -fmessage-length=0 -fexceptions -std=gnu++23 -DHAVE_W32API_H -DBUILDING_PLUGIN -D__WXMSW__ -DWXUSINGDLL -DNOPCH -DwxUSE_UNICODE -D_WIN64 -DCC_NO_COLLAPSE_ITEM -DcbDEBUG -DDOLOGSNIP -g -std=gnu++23 -Ic:\CB13840\..\include -Ic:\CB13840\..\include\tinyxml -Ic:\CB13840\..\sdk\wxscintilla\include -Isrc -IC:\wxWidgets-3.3.2\include -IC:\wxWidgets-3.3.2\lib\gcc_dll\mswu -c C:\Temp\newdir\debugger_gdbmi\src\cmd_queue.cpp -o c:\CB13840\..\.obj33_64\plugins\contrib\debugger_gdbmi\src\cmd_queue.o
g++.exe -Wextra -Wall -m64 -g -g -pipe -mthreads -fmessage-length=0 -fexceptions -std=gnu++23 -DHAVE_W32API_H -DBUILDING_PLUGIN -D__WXMSW__ -DWXUSINGDLL -DNOPCH -DwxUSE_UNICODE -D_WIN64 -DCC_NO_COLLAPSE_ITEM -DcbDEBUG -DDOLOGSNIP -g -std=gnu++23 -Ic:\CB13840\..\include -Ic:\CB13840\..\include\tinyxml -Ic:\CB13840\..\sdk\wxscintilla\include -Isrc -IC:\wxWidgets-3.3.2\include -IC:\wxWidgets-3.3.2\lib\gcc_dll\mswu -c C:\Temp\newdir\debugger_gdbmi\src\cmd_result_parser.cpp -o c:\CB13840\..\.obj33_64\plugins\contrib\debugger_gdbmi\src\cmd_result_parser.o
In file included from C:\Temp\newdir\debugger_gdbmi\src\cmd_queue.cpp:1:
C:\Temp\newdir\debugger_gdbmi\src\cmd_queue.h:11:10: fatal error: globals.h: No such file or directory
   11 | #include "globals.h"
      |          ^~~~~~~~~~~
compilation terminated.
Process terminated with status 1 (0 minute(s), 6 second(s))
 
In file included from C:\Temp\newdir\debugger_gdbmi\src\actions.h:6,
                 from C:\Temp\newdir\debugger_gdbmi\src\actions.cpp:1:
C:\Temp\newdir\debugger_gdbmi\src\cmd_queue.h:11:10: fatal error: globals.h: No such file or directory
   11 | #include "globals.h"
      |          ^~~~~~~~~~~
compilation terminated.
Process terminated with status 1 (0 minute(s), 7 second(s))
 
Process terminated with status 0 (0 minute(s), 12 second(s))
2 error(s), 0 warning(s) (0 minute(s), 12 second(s))
 
Pages: 1 [2] 3 4 5 6 7 ... 10