You have to disable "Auto generate filename extension" option in the Project -> Properties dialog.
I disabled it and changed "output filename" adding exe extension. But the compiled console application is still without extension.
I tested it here on Fedora with latest nightly and it works as expected.
-------------- Build: Debug in test (compiler: GNU GCC Compiler)---------------
g++ -Wall -fexceptions -g -I/tmp/test -c /tmp/test/main.cpp -o obj/Debug/main.o
g++ -o bin/Debug/test.exe obj/Debug/main.o
Output file is bin/Debug/test.exe with size 27,85 KB
Process terminated with status 0 (0 minute(s), 0 second(s))
0 error(s), 0 warning(s) (0 minute(s), 0 second(s))
-------------- Run: Debug in test (compiler: GNU GCC Compiler)---------------
Checking for existence: /tmp/test/bin/Debug/test.exe
Executing: gnome-terminal --hide-menubar -t test -x /usr/bin/cb_console_runner LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. /tmp/test/bin/Debug/test.exe (in /tmp/test/.)
Process terminated with status 0 (0 minute(s), 0 second(s))
Did you change it for all targets and if not, did you test it on the correct target ?
Can you copy the "Build log"when doing a full rebuild and paset it here, at least the relevant part (linking of the executable) ?
You should see the full filename in the linker command in the logs.
And to avoid any misunderstandings: you use a "real" Code::Blocks project, not a Makefile-based project ?