Finally we managed to release Code::Blocks 12.11 !
You can download binaries for windows, mac and many major linux distros from our download page (http://www.codeblocks.org/downloads/26)
Many thanks to all the contributors and developers who worked hard for this!
Many many big Thanks.
May be useful to precise :
On which svn version is it based ?
Which TDM version is included for mingw windows version ?
gd_on
It seems all exes/dlls have not been stripped the debug info.
Great work, thanks!!!
New logo, manual, and now the executable gets (re)linked if any of the dependency libs are changed.
I couldn't spot the "TortoiseSVN" plugin mentioned in the manual ch 2.9. But I don't really need it anyway.
Best regards
Quote from: gd_on on December 06, 2012, 11:53:06 AM
On which svn version is it based ?
Which TDM version is included for mingw windows version ?
- On the latest revision in the 12.11 branch.
- TDM v4,7,1, latest available.
Quote from: xunxun on December 06, 2012, 12:32:48 PM
It seems all exes/dlls have not been stripped the debug info.
Yes, on purpose.
hey , Just saw the code::blocks 12.11 is released. i am facing problem while downloading .. :/
i have slow internet .. .. when i go for download there is no possible chance for resuming it.
i want to download for "codeblocks-12.11mingw-setup.exe" .
i am using IDM
plz give me a link for a any-other server which have resume capability or if you can have " .torrent" for it.
I too am having download problems - hosting C::B on a site that provides "resume" capability would save me a lot of time (and money, as I pay per byte).
I try to put it onto my server, but the MinGW-version is not downloadable at the moment.
C::B for windows without MinGW can be downloaded from:
http://apt.jenslody.de/downloads/codeblocks-12.11-setup.exe (http://apt.jenslody.de/downloads/codeblocks-12.11-setup.exe)
The version bundled with MinGW follows as soon as possible.
Here it is:
http://apt.jenslody.de/downloads/codeblocks-12.11mingw-setup.exe (http://apt.jenslody.de/downloads/codeblocks-12.11mingw-setup.exe)
Download should be fast and resumable !
Please use sourceforge as alternative download, see our site for the links.
You can also try from my mirror.
Quotehttp://cb.biplab.in/mirror/12.11/
Currently codeblocks-12.11-setup.exe file is available. Rest will follow as soon as Berlios responds.
@ Devs,
By the way, source tarball of Windows binary is missing. Please upload it in Berlios.
Jens, thanks very much for that - worked perfectly.
I don't suppose any more thought has been given by the devs to moving the project off Berlios and on to somewhere more, um modern? And of switching from SVN to a DVCS? sorry to harp on at this, but I think it will have to be done at some point, if C::B is going to have a long-term future.
first of all thanks for the new release... :D
i have an administrator account on win 7. still it is showing "Cannot create target folder. Installation cannot continue. (Probably missing access rights?)". i need to right click and use run as administrator. no problems after installation though. Note: i have two administrator accounts on my pc.
.... i thought codeblocks would get a new icon, i saw before in one of the posts. i dont see that post now.. ???
Link updated in my previous post (http://forums.next.codeblocks.org/index.php/topic,17200.msg117946.html#msg117946) for C::B with MinGW !
I also added the links to our binary download page.
Thanks a lot Jens (Admin) . :D :D
http://apt.jenslody.de/downloads/codeblocks-12.11mingw-setup.exe
Please don't use the link any more!
Jens
this link worked and has resume capability.
and thanks to all berliOS Developers and code::blocks team. :)
Great work, thanks!!!
Why the name is not 12.12 ? ;D
Best regards,
Great job! I looked at the downloads page, and that is a huge number of packages that were prepared!
Quote from: Uskok on December 06, 2012, 08:11:44 PM
Why the name is not 12.12 ? ;D
The build date/SVN revision date counts, which you can see in the about dialog.
Quote from: MortenMacFly on December 07, 2012, 01:33:52 PM
Quote from: Uskok on December 06, 2012, 08:11:44 PM
Why the name is not 12.12 ? ;D
The build date/SVN revision date counts, which you can see in the about dialog.
Just kidding.
I'm happy that CB has new official version.
Since one year, I am using CB as basic developer tool in our company. It is a little bit tune up version of CB to fit into our developing environments.
Yesterday, I wrote 25 pages document why CB is best choice for us. I would like to push CB as basis tool. I very much appreciate the remote debugging ability.
The rest of the company is stuck with vi and work in the linux console.
Quote from: Uskok on December 07, 2012, 02:58:14 PM
The rest of the company is stuck with vi and work in the linux console.
This is because they are real/true developers :)
Quote from: oBFusCATed on December 07, 2012, 03:13:37 PM
Quote from: Uskok on December 07, 2012, 02:58:14 PM
The rest of the company is stuck with vi and work in the linux console.
This is because they are real/true developers :)
Quote one programmer who stuck with the same problem best describes why I got into this business.
"Lately I have been doing some development on the LINUX and UNIX platforms. And I have quickly come to despise an entire generation of back-bone technologies. I am talking about the tools that make up most of these systems; make, vi, telnet, grep and these kinds of tools. The world would have been a better place if these technologies had been retired 10 years ago. And yet, many users of these systems tend to hail their versatility. If they only would turn their heads away from the terminal screen for a moment, they would see that the world had moved on a long time ago...
Anyway, I once promised myself never to use a vi editor because life is too short to learn another move cursor down key-combination, and since there is no such term as "Integrated Development Environment" available in the vocabulary on these platforms, I decided to make one myself."
I have mirrored All (except one) CodeBlocks-12.11 release files from Berlios to my server. Mirror can be accessed from the following url.
Quotehttp://cb.biplab.in/mirror/12.11/
I have added md5, sha1 and sha256 checksum so that downloaded files (from my mirror) can be verified. Do note that Berlios links doesn't have any checksum verification files. So I generated them on my server.
@ Admins,
1) Debian package links are wrong. Squeeze binary links are pointing to Wheezy binaries and vice versa.
2) Fedora 18-x86_64 release package link is broken. I'm getting a 404 error.
Quote from: Biplab on December 08, 2012, 07:40:28 AM
@ Admins,
1) Debian package links are wrong. Squeeze binary links are pointing to Wheezy binaries and vice versa.
2) Fedora 18-x86_64 release package link is broken. I'm getting a 404 error.
Fixed.
Thanks for reporting !
The berlios interface (or database) seems to be broken. Some files show multiple times with different sizes and are there, and a link for the fc18-x86_64 package was shown, but it was not there. Very weird ??? .
Quote from: jens on December 08, 2012, 11:14:12 AM
Quote from: Biplab on December 08, 2012, 07:40:28 AM
@ Admins,
1) Debian package links are wrong. Squeeze binary links are pointing to Wheezy binaries and vice versa.
2) Fedora 18-x86_64 release package link is broken. I'm getting a 404 error.
Fixed.
Thanks for reporting !
The berlios interface (or database) seems to be broken. Some files show multiple times with different sizes and are there, and a link for the fc18-x86_64 package was shown, but it was not there. Very weird ??? .
Thanks Jens. I have updated my mirror.
Probably this experience gives admins a good idea about Berlios.
It's broken and horribly slow for the rest of the world. Download speed fluctuates like hell. Even from my Germany server I was getting a speed of 400 KB/s for many files. Sometimes speed zooms up to 2-3 MB/s. From my home it rarely goes above 100 KB/s. I had to spend considerable time to download them.
There are several good hosts compared to Berlios. IMHO, Admins should give them a thought.
thank you for the release. the only disappointing thing is that "watches (new)" replaced the good old watches window. it is much harder to debug without local/function variables listed. grid window does not expand automatically: long variables just don't fit int the window. i can't see anything better in this new approach.
is it possible to have the old watches window in 12.11?
Quote from: gundra on December 10, 2012, 09:56:26 AM
is it possible to have the old watches window in 12.11?
Yes, switch to 10.05 and feel the misery of the old watches window.
Quote from: oBFusCATed on December 10, 2012, 12:58:45 PM
Yes, switch to 10.05 and feel the misery of the old watches window.
come on! that's not a solution...
Quote from: gundra on December 10, 2012, 04:14:50 PM
come on! that's not a solution...
Currently the only available solution. ;D
Nicely done guys! ;)
I've been using the Nightly Builds for quite sometime, but it's really nice to finally see a new release!
I know one shouldn't bring up critiques/suggestions in ones first post, but I still wanted to let you know three points:
- You should (have) push(ed) a message on the Nightly Builds RSS feed, because I only now found out through another person, that the official release had happened, but was subbed to the Nightly Build RSS feed. ;)
- Maybe you want to put a notice on the download section that the Windows 7/8 needs to be run as admin (if you were to use the default path).
- And would it be possible to provide a zip archive file, so one could still use it as 'portable' application (yes I know it's not strictly portable)? ;)
Thanks for everything!
I have the version 10.05 on ubuntu
how can i upgrade it to the new version?
What version of Ubuntu ?
Hi i was about to start learning c++ so i downloaded code::blocks normal and it came up with error that i dont have compiler or something like that but anyways so i went to homepage again and i tried to download the other setup with mingw but i think the server are down so i went on forum (this) and i so the download link so i downloaded it and it comes up with this http://scr.hu/2qr/udxl0
NSIS i tried to bypass and see the solution at that page i didnt all the things and it stills comes up with this error
my system is win 7 ultimate 64bit can anyone help me?
Quote from: horagino12 on December 12, 2012, 10:35:53 PM
can anyone help me?
Seems you downloaded a broken installer, because the download junk died. Just download again and maybe use another mirror.
i did download it like 5 times from another this forum link but it still doesnt work and want mirror? i can't see any
Which server do you use (berlios or mine) ?
Did you remove the old download, before you tried to download again ?
Quote from: horagino12 on December 13, 2012, 05:37:01 PM
i did download it like 5 times from another this forum link but it still doesn't work and want mirror? i can't see any
BerliOS is heavily under load, currently, also, its automatic mirror solution with SourceForge seems broken. Please try to use the mirrors as stated here:
http://www.codeblocks.org/downloads/binaries
Another mirror (at SourceForge), here:
https://sourceforge.net/projects/codeblocks/files/
...is about to be prepared and ready in the evening. (Uploads there take looooong times for me, but downloads will be fast as usual).
Sorry for that... not much we can do about in the moment. Its not our servers you know...
jens i tried both none work ( you're one is "broken")
and Morten i olny have windows so i cant use any
Name Modified Size Downloads Status
Parent folder
Totals: 0 Items
This folder has no files.
theres none for windows in sourceforge
Quote from: horagino12 on December 13, 2012, 05:55:16 PM
jens i tried both none work ( you're one is "broken")
and Morten i olny have windows so i cant use any
[...]
This folder has no files.
Would you
please be more patient!
Read again what I've said:
Quote from: MortenMacFly on December 13, 2012, 05:48:44 PM
...is about to be prepared and ready in the evening. (Uploads there take looooong times for me, but downloads will be fast as usual).
sorry my english is not good... i couldnt understand that
Quote from: horagino12 on December 13, 2012, 06:29:12 PM
sorry my english is not good... i couldnt understand that
No Problem. I'll report here, when I am ready... its a monkey job...
Mirror at our SourceForge page is up here:
http://sourceforge.net/projects/codeblocks/
but this is 10.5 without mingw
No you just need to browse to the files on your own or use this link: http://sourceforge.net/projects/codeblocks/files/Binaries/12.11/ ;)
Quote from: horagino12 on December 13, 2012, 10:46:11 PM
but this is 10.5 without mingw
Oh dear... yes, the link on the frontpage points to the file mostly down-loaded, but there are also others, you know... Just click on "Files" and download what you need. Its the same with every project on sourceforge.
Great job for this event. Did not come here since some times, but I just started this new version... Did not remember the upgrade, but when I saw the new...erm, logo, it jumped in my eyes ^^
At least it is quite uncommon :D
Quote from: Freem on December 20, 2012, 02:12:54 AM
Great job for this event. Did not come here since some times, but I just started this new version... Did not remember the upgrade, but when I saw the new...erm, logo, it jumped in my eyes ^^
At least it is quite uncommon :D
I so agree. That logo is such a pleasure.
Hello, I'm a C developer and a proud user of Code::Block since 2 years, I work on Windows 7.
I loved the 10.05 version: it was stable except few hangs when gdb was freezing but nothing impossible to fix with the task manager.
When I saw the 12.11 nightly some times ago, I gave it a try and I was disappointed: lot of UI elements changed in (IMO) the wrong way. I thought that it was a dev build and I said to myself that it'll improve with time. I tried several nighty, then RC1 then the final build and elements I disliked became more and more visible.
I've no problem with changes, but I want them to go in the right direction, here is a short list of what I think isn't (but I won't go against what has been decided by core developers.
1- Watches window: no more a list of variable of the current function: well, I deal with some quite big functions with over 50 variables. To deal with so much, I've functions that modify a lot of them in the same time but as I don't want to read the whole function, with the old system, I'd to watch on what become red after the function, now, I'll have to add _every variable_ to the window, manually... Please, tell me there is a way to get them all easily, the new system seems to have a lot of things to show but without this, I can't do anything :(
2- build options: they are locked when the dbg is running but I don't understand why and there is way to access to it anyway (via project prefs)?
3- can't run anymore a normal instance + one in the debugger, it was damn useful to study soft comportment when he wasn't alone to access to some resources.
4- sometime, when I press 'enter' while moving in the project tree, the tree collapse. (bug?)
5- Syntax color: well, there was A LOT of improvements in this section (:D) but also several weird bugs: the _WIN32 flag, defined at compile time is ignored in the #ifdef in the editor. It's also the case with some defines in #include file. Also, variable call "size" are colored in green. It's probably something in C++ but the project is in C so... it's disturbing. Minor bugs but they make read some long code harder :(
6- After a sigsev, the stack once hasn't been displayed. Maybe gdb failed at provide it but in this case, a message (ex: Stack unavailable) would be great.
7- UX: when the cursor is on a tile name at the bottom of the screen (dbg, search and compilation results,...) and I slide, tiles change very quickly when I highly probably simply want to slide some code. Maybe a pref for that?
I know it's a little bit late but if it could be fixed in a future release, it'd be awesome.
Even if I seem to be an evil user who want to say shit on your hard work, please understand that I wrote this long post simply because I really want Code::Block to be even better and some of all those cool new features that this update bring are hidden under some bugs and UI/UX ditch. I'll report those bugs but the compiler defines syntax color is already filled since 2 years (http://developer.berlios.de/bugs/?func=detailbug&bug_id=17921&group_id=5358) so I was scared that those issues fall into deepest part of the bug tracker without any notice :/
Thanks in advance for read this long post and tell me if you want details on anything (English isn't my native language so some parts are probably hard to understand).
PS: ICC support seems broken under both 10.05 and 12.11, on 12.11, the error message is that it doesn't find VS in the path.
Regards
Taiki
For devs under Windows we mad it easier to get a quick start by providing the pre-compiled wxWidgets distro we have used for the release (and will use for upcoming nightlies) here:
http://www.codeblocks.org/downloads/source
Quote from: Taiki on December 26, 2012, 12:43:10 AM
I tried several nighty, then RC1 then the final build and elements I disliked became more and more visible.
I've no problem with changes, but I want them to go in the right direction, here is a short list of what I think isn't (but I won't go against what has been decided by core developers.
Why didn't you post it before the release ?
Quote from: Taiki on December 26, 2012, 12:43:10 AM
7- UX: when the cursor is on a tile name at the bottom of the screen (dbg, search and compilation results,...) and I slide, tiles change very quickly when I highly probably simply want to slide some code. Maybe a pref for that?
I don't understand what you mean, can you please try to explain in other words, probably with a step-by-step explanation how to get the issue ?
Quote from: Taiki on December 26, 2012, 12:43:10 AM
5- Syntax color: well, there was A LOT of improvements in this section (:D) but also several weird bugs: the _WIN32 flag, defined at compile time is ignored in the #ifdef in the editor.
This should actually work... what are your settings in
Settings->Editor...->C/C++ Editor settings?
(Correctly) parsing defines from
#included files is significantly more difficult than it may first sound, and is currently not supported.
Quote from: Taiki on December 26, 2012, 12:43:10 AM
PS: ICC support seems broken under both 10.05 and 12.11, on 12.11, the error message is that it doesn't find VS in the path.
I can work on this, however, I do not own ICC; is there a trial/free version of it?
Quote from: jens on December 26, 2012, 01:06:37 PM
Why didn't you post it before the release ?
Because I thought that the developpement was focused on features and those issues would be fixed later as several of them were fixed in the RC.
Quote from: jens on December 26, 2012, 01:06:37 PM
I don't understand what you mean, can you please try to explain in other words, probably with a step-by-step explanation how to get the issue ?
Put your cursor on the panel at the bottom where compiler is logged, global search results are displayed & co.
Put the cursor on a tile, that contain the name of the panel (ex: "build log", "search result") then roll the mouse.
You'll see tiles change really quickly in a unsuable way.
Quote from: Alpha on December 26, 2012, 03:42:36 PM
This should actually work... what are your settings in Settings->Editor...->C/C++ Editor settings?
(Correctly) parsing defines from #included files is significantly more difficult than it may first sound, and is currently not supported.
https://dl.dropbox.com/u/12087072/Syntaxical%20color.png <<
The bug just disappeared u_uFor the parsing, I guess it's hard :p (maybe a setting to explicitly add a define to the list (eg: DEV_BUILD & co)
Quote from: Alpha on December 26, 2012, 03:42:36 PM
I can work on this, however, I do not own ICC; is there a trial/free version of it?
Intel give free licence for students http://software.intel.com/en-us/intel-education-offerings
They also provide trial for 30 days: http://software.intel.com/en-us/intel-parallel-studio-xe
Thanks for working on my issues :)
Quote from: Taiki on December 26, 2012, 04:49:25 PM
Quote from: jens on December 26, 2012, 01:06:37 PM
I don't understand what you mean, can you please try to explain in other words, probably with a step-by-step explanation how to get the issue ?
Put your cursor on the panel at the bottom where compiler is logged, global search results are displayed & co.
Put the cursor on a tile, that contain the name of the panel (ex: "build log", "search result") then roll the mouse.
You'll see tiles change really quickly in a unsuable way.
That's intended behaviour and it is not so unususal.
Nevertheless, you can switch it off by unchecking "Settings -> Environment -> Notebooks appearance -> Enable scrolling with mousewheel".
Quote from: jens on December 26, 2012, 05:42:37 PM
Quote from: Taiki on December 26, 2012, 04:49:25 PM
Quote from: jens on December 26, 2012, 01:06:37 PM
I don't understand what you mean, can you please try to explain in other words, probably with a step-by-step explanation how to get the issue ?
Put your cursor on the panel at the bottom where compiler is logged, global search results are displayed & co.
Put the cursor on a tile, that contain the name of the panel (ex: "build log", "search result") then roll the mouse.
You'll see tiles change really quickly in a unsuable way.
That's intended behaviour and it is not so unususal.
Nevertheless, you can switch it off by unchecking "Settings -> Environment -> Notebooks appearance -> Enable scrolling with mousewheel".
Okay, probably usefull on a Desktop but with a laptop pad, it's way too fast.
Thanks for the advice =)
Quote from: Taiki on December 26, 2012, 05:55:58 PM
Quote from: jens on December 26, 2012, 05:42:37 PM
Quote from: Taiki on December 26, 2012, 04:49:25 PM
Quote from: jens on December 26, 2012, 01:06:37 PM
I don't understand what you mean, can you please try to explain in other words, probably with a step-by-step explanation how to get the issue ?
Put your cursor on the panel at the bottom where compiler is logged, global search results are displayed & co.
Put the cursor on a tile, that contain the name of the panel (ex: "build log", "search result") then roll the mouse.
You'll see tiles change really quickly in a unsuable way.
That's intended behaviour and it is not so unususal.
Nevertheless, you can switch it off by unchecking "Settings -> Environment -> Notebooks appearance -> Enable scrolling with mousewheel".
Okay, probably usefull on a Desktop but with a laptop pad, it's way too fast.
Thanks for the advice =)
Works fine on my laptop, with mouse or touchpad.
Quote from: Taiki on December 26, 2012, 12:43:10 AM
1- Watches window: no more a list of variable of the current function: well, I deal with some quite big functions with over 50 variables. To deal with so much, I've functions that modify a lot of them in the same time but as I don't want to read the whole function, with the old system, I'd to watch on what become red after the function, now, I'll have to add _every variable_ to the window, manually... Please, tell me there is a way to get them all easily, the new system seems to have a lot of things to show but without this, I can't do anything :(
Search the forum...
Quote from: Taiki on December 26, 2012, 12:43:10 AM
2- build options: they are locked when the dbg is running but I don't understand why and there is way to access to it anyway (via project prefs)?
I'll fix this some day...annoys me too.
Quote from: Taiki on December 26, 2012, 12:43:10 AM
3- can't run anymore a normal instance + one in the debugger, it was damn useful to study soft comportment when he wasn't alone to access to some resources.
This sounds like a bug in the old version.
You can setup a tool to run your output executable.
Quote from: Taiki on December 26, 2012, 12:43:10 AM
6- After a sigsev, the stack once hasn't been displayed. Maybe gdb failed at provide it but in this case, a message (ex: Stack unavailable) would be great.
If you can provide the full log from your debug session (see the settings), I can look at it.
Quote from: oBFusCATed on December 28, 2012, 06:29:16 PM
Quote from: Taiki on December 26, 2012, 12:43:10 AM
3- can't run anymore a normal instance + one in the debugger, it was damn useful to study soft comportment when he wasn't alone to access to some resources.
This sounds like a bug in the old version.
You can setup a tool to run your output executable.
Sure but the reason we use IDE is to have a lot of tools just under our hand and it's one less =/
Quote from: oBFusCATed on December 28, 2012, 06:29:16 PM
Quote from: Taiki on December 26, 2012, 12:43:10 AM
6- After a sigsev, the stack once hasn't been displayed. Maybe gdb failed at provide it but in this case, a message (ex: Stack unavailable) would be great.
If you can provide the full log from your debug session (see the settings), I can look at it.
I'll try to reproduce then send the log
Quote from: Taiki on December 28, 2012, 07:36:52 PM
Sure but the reason we use IDE is to have a lot of tools just under our hand and it's one less =/
I've told you how you can achieve the same thing...
Quote from: Taiki on December 26, 2012, 12:43:10 AM
PS: ICC support seems broken under both 10.05 and 12.11, on 12.11, the error message is that it doesn't find VS in the path.
Could you apply this patch to see if it resolves the problem? (I am assuming that you
do have MSVC installed.)
Index: src/plugins/compilergcc/compilerICC.cpp
===================================================================
--- src/plugins/compilergcc/compilerICC.cpp (revision 8724)
+++ src/plugins/compilergcc/compilerICC.cpp (working copy)
@@ -71,57 +71,62 @@
for (unsigned int which_msvc = 0; which_msvc < array_size(msvcIds); ++which_msvc)
{
Compiler* vcComp = CompilerFactory::GetCompiler(msvcIds[which_msvc]);
- if (vcComp)
+ if (!vcComp)
+ continue; // compiler not registered? try next one
+
+ wxString vcMasterNoMacros = vcComp->GetMasterPath();
+ Manager::Get()->GetMacrosManager()->ReplaceMacros(vcMasterNoMacros);
+ if ( !wxFileExists(vcMasterNoMacros + sep + wxT("bin") + sep + vcComp->GetPrograms().C)
+ && !wxFileExists(vcMasterNoMacros + sep + vcComp->GetPrograms().C) )
+ continue; // this MSVC is not installed; try next one
+
+ const wxString& vcMasterPath = vcComp->GetMasterPath();
+ if (m_ExtraPaths.Index(vcMasterPath) == wxNOT_FOUND)
+ m_ExtraPaths.Add(vcMasterPath);
+ if ( !vcMasterPath.EndsWith(wxT("bin"))
+ && m_ExtraPaths.Index(vcMasterPath + sep + wxT("bin")) == wxNOT_FOUND )
{
- if (vcComp->AutoDetectInstallationDir() == adrDetected)
+ m_ExtraPaths.Add(vcMasterPath + sep + wxT("bin"));
+ }
+ AddIncludeDir(vcMasterPath + _T("\\Include"));
+ AddLibDir(vcMasterPath + _T("\\Lib"));
+ AddResourceIncludeDir(vcMasterPath + _T("\\Include"));
+
+ const wxArrayString& vcExtraPaths = vcComp->GetExtraPaths();
+ for (size_t i = 0; i < vcExtraPaths.GetCount(); ++i)
+ {
+ if ( m_ExtraPaths.Index(vcExtraPaths[i]) == wxNOT_FOUND
+ && wxDirExists(vcExtraPaths[i]) )
{
- const wxString& vcMasterPath = vcComp->GetMasterPath();
- if (m_ExtraPaths.Index(vcMasterPath) == wxNOT_FOUND &&
- wxDirExists(vcMasterPath))
+ m_ExtraPaths.Add(vcExtraPaths[i]);
+ }
+ }
+ const wxArrayString& vcIncludeDirs = vcComp->GetIncludeDirs();
+ for (size_t i = 0; i < vcIncludeDirs.GetCount(); ++i)
+ {
+ if (wxDirExists(vcIncludeDirs[i]))
+ {
+ if (m_IncludeDirs.Index(vcIncludeDirs[i]) == wxNOT_FOUND)
{
- m_ExtraPaths.Add(vcMasterPath);
+ AddIncludeDir(vcIncludeDirs[i]);
}
- AddIncludeDir(vcMasterPath + _T("\\Include"));
- AddLibDir(vcMasterPath + _T("\\Lib"));
- AddResourceIncludeDir(vcMasterPath + _T("\\Include"));
-
- const wxArrayString& vcExtraPaths = vcComp->GetExtraPaths();
- for (size_t i = 0; i < vcExtraPaths.GetCount(); ++i)
+ if (m_ResIncludeDirs.Index(vcIncludeDirs[i]) == wxNOT_FOUND)
{
- if (m_ExtraPaths.Index(vcExtraPaths[i]) == wxNOT_FOUND &&
- wxDirExists(vcExtraPaths[i]))
- {
- m_ExtraPaths.Add(vcExtraPaths[i]);
- }
+ AddResourceIncludeDir(vcIncludeDirs[i]);
}
- const wxArrayString& vcIncludeDirs = vcComp->GetIncludeDirs();
- for (size_t i = 0; i < vcIncludeDirs.GetCount(); ++i)
- {
- if (wxDirExists(vcIncludeDirs[i]))
- {
- if (m_IncludeDirs.Index(vcIncludeDirs[i]) == wxNOT_FOUND)
- {
- AddIncludeDir(vcIncludeDirs[i]);
- }
- if (m_ResIncludeDirs.Index(vcIncludeDirs[i]) == wxNOT_FOUND)
- {
- AddResourceIncludeDir(vcIncludeDirs[i]);
- }
- }
- }
- const wxArrayString& vcLibDirs = vcComp->GetLibDirs();
- for (size_t i = 0; i < vcLibDirs.GetCount(); ++i)
- {
- if (m_LibDirs.Index(vcLibDirs[i]) == wxNOT_FOUND &&
- wxDirExists(vcLibDirs[i]))
- {
- AddLibDir(vcLibDirs[i]);
- }
- }
- msvcFound = true;
- break;
}
}
+ const wxArrayString& vcLibDirs = vcComp->GetLibDirs();
+ for (size_t i = 0; i < vcLibDirs.GetCount(); ++i)
+ {
+ if ( m_LibDirs.Index(vcLibDirs[i]) == wxNOT_FOUND
+ && wxDirExists(vcLibDirs[i]) )
+ {
+ AddLibDir(vcLibDirs[i]);
+ }
+ }
+ msvcFound = true;
+ break;
}
if (!msvcFound)
@@ -130,7 +135,6 @@
"This compiler requires MS compiler for proper functioning and\n"
"it may not work without it."),
_T("Error"), wxOK | wxICON_ERROR);
-
}
}
}
Quote from: Taiki on December 28, 2012, 07:36:52 PM
Sure but the reason we use IDE is to have a lot of tools just under our hand and it's one less =/
What you may fail to understand is that oBFusCATed suggested you setup a generic tool using macros
in the IDE which you can use on
all of your projects to achieve what you want. I've done the same, its vital for some pieces of software. The command is a one-liner, and is attached as "Tool" to C::B but actually starts your currently active target's executable detached (as an example, if you like it that way).
Quote from: Alpha on December 29, 2012, 02:52:49 AM
Quote from: Taiki on December 26, 2012, 12:43:10 AM
PS: ICC support seems broken under both 10.05 and 12.11, on 12.11, the error message is that it doesn't find VS in the path.
Could you apply this patch to see if it resolves the problem? (I am assuming that you do have MSVC installed.)
I tried to compile it with the source code of the 12.11 version but the plugin fail at load =/
Here is the DLL, compiled with MinGW (a quite recent version which come with GDB 7.5). https://dl.dropbox.com/u/12087072/compiler.dll
Quote from: Taiki on January 03, 2013, 07:30:12 PM
I tried to compile it with the source code of the 12.11 version but the plugin fail at load =/
Did you compile only the plugin, or the whole program?
Quote from: Taiki on January 03, 2013, 07:30:12 PM
MinGW (a quite recent version [...]
What version exactly? Also, SJLJ or DW2?
Quote from: Alpha on January 04, 2013, 06:39:18 PM
Quote from: Taiki on January 03, 2013, 07:30:12 PM
I tried to compile it with the source code of the 12.11 version but the plugin fail at load =/
Did you compile only the plugin, or the whole program?
Only the plugin.
Quote from: Alpha on January 04, 2013, 06:39:18 PM
Quote from: Taiki on January 03, 2013, 07:30:12 PM
MinGW (a quite recent version [...]
What version exactly? Also, SJLJ or DW2?
It seems to be GCC 4.7.2, and as I didn't saw any mention of those acronyms, I guess it's SJLJ
gcc --version executed in the command line will tell you the version.
Quote from: Taiki on January 04, 2013, 06:58:19 PM
It seems to be GCC 4.7.2, and as I didn't saw any mention of those acronyms, I guess it's SJLJ
From the version number, I would guess you have the official MinGW build, which uses DW2 exception handling. However, the release (from what I can tell (http://forums.next.codeblocks.org/index.php/topic,3299.0.html)) was built using SJLJ.
Quote from: Taiki on January 04, 2013, 06:58:19 PM
Only the plugin
The two exception handling methods cannot be mixed (to my knowledge), so you will either have to compile the plugin using this SJLJ build (http://tdm-gcc.tdragon.net/), or build the whole program with your current compiler.
Okay, I'll compile it again then tell you what happen, but I won't have access to my laptop with ICC for a week.
Hello, the plugin is (finally) compiled but I still get the error:
icl.exe /nologo -Wall -DCURL_STATICLIB /O1 -Wall -g -DDEBUG /Idata\lib\include /I"C:\Program Files (x86)\Intel\Composer XE\bin\ia32\Include" /IE:\project\data\lib\include /I"C:\Program Files (x86)\Intel\Composer XE 2013\compiler\include" /I"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include" /I"C:\Program Files\CodeBlocks\MinGW\include" /c "D:\project\AES-rjindael.c" /Fo"D:\project\obj\Debug\AES-rjindael.obj" /Qstd=c99
icl: error #10114: Microsoft Visual C++ not found in path
I customized the line (to add /Qstd=c99), here is it: $compiler /nologo $options $includes /c "$file" /Fo"$file_dir\$object" /Qstd=c99.
What is the command executed on the command line which can be used successfully to build the code?
Quote from: Taiki on January 16, 2013, 02:07:55 PM
I customized the line (to add /Qstd=c99), here is it: $compiler /nologo $options $includes /c "$file" /Fo"$file_dir\$object" /Qstd=c99.
This it pretty much the most wrong way to do it. Use the other options in your project's build options or in the compiler's settings.
Quote from: oBFusCATed on January 16, 2013, 02:11:01 PM
What is the command executed on the command line which can be used successfully to build the code?
Quote from: Taiki on January 16, 2013, 02:07:55 PM
I customized the line (to add /Qstd=c99), here is it: $compiler /nologo $options $includes /c "$file" /Fo"$file_dir\$object" /Qstd=c99.
This it pretty much the most wrong way to do it. Use the other options in your project's build options or in the compiler's settings.
The line work on the ICC command line utility but the path is different: http://pastie.org/private/0q2gx3zgm9vo8h1bifp0g
I guess but actually, as I only use c99, I thought it was a good way not to have to set it on every single project I already have.
I forgot to mention that the auto-detect algorithm must be re-run. Could you try starting with a new config file (so none of your old settings potentially interfere), and then post what is generated for the additional/extra paths for ICC?
Remove what is stored in AppData/ is enough to reset prefs?
Also, how to get CB console PATH? Is it the same than the default system PATH?
Edit: Did it, the default path is incorrect for my ICC install (C:\Program Files (x86)\Intel\Composer XE\bin\ia32 on the last version) and I still get the error
Quote from: Taiki on January 16, 2013, 03:38:24 PM
Remove what is stored in AppData/ is enough to reset prefs?
Yes.
Quote from: Taiki on January 16, 2013, 03:38:24 PM
Also, how to get CB console PATH? Is it the same than the default system PATH?
Code::Blocks modifies the path; you can check what it is by adding a pre/post-build step that prints out the path.
Did it, the default path is incorrect for my ICC install (C:\Program Files (x86)\Intel\Composer XE\bin\ia32 on the last version) and I still get the error.
In a cmd.exe, the path didn't changed
Oh... you are on 64 bit.
There are some auto-detection flaws in ICC that will take some time (and trial/error) to fix. Meanwhile, the attached patch might resolve your problem (if you would like to try it).
I did but I keep getting the same error =/
I'll try to set the ICC path in the global path and tell if it fix the issue.
If you want to add some extra log to help you to fix it, feel free to do so.
Also, we could continue this discussion via email/somewhere else to stop to flood this release topic ^^'
@Admins: Could these ICC posts be split into a separate thread please?
Quote from: Taiki on December 26, 2012, 12:43:10 AM
1- Watches window: no more a list of variable of the current function: well, I deal with some quite big functions with over 50 variables. To deal with so much, I've functions that modify a lot of them in the same time but as I don't want to read the whole function, with the old system, I'd to watch on what become red after the function, now, I'll have to add _every variable_ to the window, manually... Please, tell me there is a way to get them all easily, the new system seems to have a lot of things to show but without this, I can't do anything :(
Hi,
if you use a recent Python-scriptable GDB (see http://forums.next.codeblocks.org/index.php/topic,11301.0.html (http://forums.next.codeblocks.org/index.php/topic,11301.0.html)), you can register a pretty printer by calling the register_peter_printers(None) from the following code which I just hacked together. Then add a watch to `(void*****)"FRAME"` and you see all local variables and function arguments.
import sys
import gdb
import re
class static:
"Creates a 'static' method"
def __init__(self, function):
self.__call__ = function
peter_pretty_printers = []
def register_pretty_printer(pretty_printer):
"Registers a Pretty Printer"
peter_pretty_printers.append(pretty_printer)
return pretty_printer
@register_pretty_printer
class AllLocalsOrArgumentsPrinter:
""" pretty prints `(void*****)"LOCALS"` as a map of all local variables
or `(void*****)"ARGS"` as a map of all function arguments
or `(void*****)"FRAME"` as both
"""
@static
def supports_value(val):
if val.type != gdb.parse_and_eval("(void*****)0").type:
return False
try:
return val.cast(gdb.lookup_type('char').pointer()).string() in ['LOCALS', 'ARGS', 'FRAME']
except:
return False
def __init__(self, val):
self.cmd = val.cast(gdb.lookup_type('char').pointer()).string()
@static
def info_to_string(gdb_command):
result = gdb.execute(gdb_command, to_string=True).strip()
if result in ['No locals.', 'No arguments.']:
return '{}'
# make unique
split_result = re.split(r'^([a-zA-Z_][a-zA-Z0-9_]*) = ', result, flags=re.MULTILINE)
split_result.remove('')
tuples = [(split_result[2*i], split_result[2*i+1].strip('\n')) for i in range(len(split_result)/2)]
tuples.reverse()
result = ''.join([',\n' + k + ' = ' + v for (k,v) in dict(tuples).iteritems()]).lstrip(',')
return '{' + result + '\n}'
def to_string(self):
if self.cmd == 'LOCALS':
return AllLocalsOrArgumentsPrinter.info_to_string('info local')
if self.cmd == 'ARGS':
return AllLocalsOrArgumentsPrinter.info_to_string('info arg')
if self.cmd == 'FRAME':
locals = AllLocalsOrArgumentsPrinter.info_to_string('info local')
args = AllLocalsOrArgumentsPrinter.info_to_string('info arg')
return '{\nLocal Variables = ' + locals + ',\nFunction Arguments = ' + args + '\n}'
return '?'
def register_peter_printers(obj):
if obj == None:
obj = gdb
obj.pretty_printers.append(lookup_function)
def lookup_function(val):
for pp in peter_pretty_printers:
if pp.supports_value(val):
return pp(val)
return None
cheers,
Peter
pitti platsch (http://forums.next.codeblocks.org/index.php?action=profile;u=3655), I see you wrap the gdb command in a "dummy variable in python" :). Please note that why we remove such feature in the debugger plugin. In my gdb release: unofficial MinGW GDB gdb with python released (http://forums.next.codeblocks.org/index.php/topic,11301.msg77000.html#msg77000), I use a special patch that compare the current instruction line(Program counter (http://en.wikipedia.org/wiki/Program_counter)) with the line of a local variable definition, this can void the python script print the uninitialzed local variables.
@ollydbg: Yes, my pretty printer works best (or only ;D) with your patched gdb. If I knew a way to iterate all symbols of a frame in python, I would not just call "info local".
But in my opinion, gdb pretty printers must be able to deal with arbitrary/corrupt data.
If a pretty printer crashes/turns into an infinite loop/takes too long to complete when handed some arbitrary bytes, then that pretty printer is buggy and needs to be fixed or disabled:
One of the main points in debugging is to inspect data corruption bugs.
Quote from: pitti platsch on February 04, 2013, 01:43:06 PM
@ollydbg: Yes, my pretty printer works best (or only ;D) with your patched gdb.
Did you test some uninitialzed C++ container as local variables. E.g.
void f()
{
int a;
vector<string> b;
....Some statement;
map<string,string> c;
}If you set a breakpoint in the first line of "f", then "b" and "c" are uninitialized variables, they will cause the python pretty printer try to print a large number of elements. Sometimes, it will take a long time, sometime, gdb may crash. Currently no good way to detect a variable is initialized or not. If not, it may have some corrupt values, as the constructor of the container is not called, mayb, the size of the container may be a large value.
Quote
If I knew a way to iterate all symbols of a frame in python, I would not just call "info local".
But in my opinion, gdb pretty printers must be able to deal with arbitrary/corrupt data.
If a pretty printer crashes/turns into an infinite loop/takes too long to complete when handed some arbitrary bytes, then that pretty printer is buggy and needs to be fixed or disabled:
One of the main points in debugging is to inspect data corruption bugs.
I have asked such question in gdb maillist, but it looks like there is no quick solution/fix to handle this issue. Mostly I think the c-runtime-library should fill the memory with some value like "0xCDCDCDCD", and gdb try to exam its value when it want to deference a pointer.....:)
With your patched gdb, the variables b and c are not listed in "info local" until I hit there declaration lines. And directly adding a watch to b displays as `No symbol "b" in current context.` when I just enter the function.
You are right that there is no nice simple solution yet. My `(void*****)"LOCALS"` python code is just an ugly hack for those who missed the feature and/or do plain C programming without many other fancy pretty printers. It was the only regression that stopped me from upgrading until I learned python. But now I already fell in love with the 'Evaluate expression' tooltips :)
Apart from that, it would be nice to have a checkbox next to each entry in the Watches window to temporarily enable/disable the watch.
Quote from: pitti platsch on February 04, 2013, 03:09:22 PM
With your patched gdb, the variables b and c are not listed in "info local" until I hit there declaration lines. And directly adding a watch to b displays as `No symbol "b" in current context.` when I just enter the function.
You are right that there is no nice simple solution yet.
For my patched gdb, I just filter out the local variables those definition line is bigger than the PC line. :), This is what my patch trying to do(do a dirty work to avoid crash/lag issue). If you use an unpatched gdb(like the gdb-python27.exe) from mingw official site, you may see the lag or crash issue.
Quote
My `(void*****)"LOCALS"` python code is just an ugly hack for those who missed the feature and/or do plain C programming without many other fancy pretty printers. It was the only regression that stopped me from upgrading until I learned python. But now I already fell in love with the 'Evaluate expression' tooltips :)
Apart from that, it would be nice to have a checkbox next to each entry in the Watches window to temporarily enable/disable the watch.
You can ask "oBFusCATed" to implement this, he/she is the debugger plugin guru. Or, you can implement yourself, and post a patch here. ;D
Quote from: pitti platsch on February 04, 2013, 03:09:22 PM
Apart from that, it would be nice to have a checkbox next to each entry in the Watches window to temporarily enable/disable the watch.
I don't think it is possible to have checkboxes there, but it can be put in the context menu.
I'll see if I can add it, when I'm back at improving the debugger:)
Quote from: jens on December 06, 2012, 10:45:07 AM
Finally we managed to release Code::Blocks 12.11 !
You can download binaries for windows, mac and many major linux distros from our download page (http://www.codeblocks.org/downloads/26)
Many thanks to all the contributors and developers who worked hard for this!
I haven't been on this forum in a while, but this is great news. W00t!
Can anyone help me? I am a newbie in programming and there is a bug in code::block, I don't know how to fix it.
A simply addition program has an error. The sum is not appropriate to the the numbers. How can I fix this bugs/errors ? Please help me.
Thank you
Quote from: austin2393 on April 17, 2013, 03:41:36 AM
Can anyone help me? I am a newbie in programming and there is a bug in code::block, I don't know how to fix it.
A simply addition program has an error. The sum is not appropriate to the the numbers. How can I fix this bugs/errors ? Please help me.
Thank you
Please read the rules. http://forums.next.codeblocks.org/index.php/topic,9996.0.html (http://forums.next.codeblocks.org/index.php/topic,9996.0.html)
FYI, Ubuntu 12.04 update managers (both the default one and Synaptic) with default settings do not find this version 12! They only see 10.05.
We cannot do anything about it. Go bug Ubuntu maintainers to add this package to this version of Ubuntu it is theirs job to do it.
Quote from: oBFusCATed on October 24, 2013, 04:57:10 PM
We cannot do anything about it. Go bug Ubuntu maintainers to add this package to this version of Ubuntu it is theirs job to do it.
As I was told at http://askubuntu.com/questions/365158/12-04-lts-update-managers-do-not-see-latest-codeblocks, this is a feature of Ubuntu support indeed - limited update capabilities.
Perhaps Code::Block team could kindly convince Ubuntu maintainers to allow users to update to newer versions, a kind of promotion activity of C::B; but that's probably just my a bit silly fantasy.
https://launchpad.net/~pasgui/+archive/ppa/