PortableApps.com wins big in the 2009 Community Choice Awards and hits 100 million app downloads!

Code::Blocks Portable 8.02 Development Test 2

Chris Morgan's picture
Submitted by Chris Morgan on March 23, 2009 - 4:35pm

Applications: Code::Blocks
Category: Development
Description: Code::Blocks is a C++ IDE with support for multiple compilers. Support for automatic detection of MinGW Portable ("MSYS Portable" at time of writing, to be renamed to MinGW Portable) is included.

Download Code::Blocks Portable 8.02 Development Test 2 [10.1MB download / 19.9MB installed]
(MD5: 83327d9dc81e0ea4f52875aa54ce79eb)

Note: This DOES NOT include any compilers. If you want compilers, try installing MinGW. That package will be automatically included and detected by Code::Blocks Portable if it's there (at least on first run, I think it should work if added later). Also in the future I'll see if I can create a wxWidgets addon package for wxWidgets development. It may be a bit big though.

Features:

  • Support for multiple compilers: GCC (MinGW or GNU GCC), MSVC++, Borland C++ 5.5, and more. MinGW is probably the only officially supported compiler for Code::Blocks Portable, though others should work without too much difficulty.
  • Fast custom build solutions: with Code::Blocks, there's no need for makefiles - you can do it all through it's easy-to-use interface.
  • Imports other projects: MS Visual C and Dev-C++ projects and workspaces can be imported.
  • Powerful debugging: Code::Blocks interfaces GNU GDB for debugging, it fully supports complex breakpoints, can disassemble code, can watch variables, can view stacks, make dumps, read CPU registers, and lots more.
  • Easy editing: customizable syntax highlighting, with code folding, code completion, class browser, smart indenting, even a TODO manager, and quite a bit more.
  • Plugins: Code::Blocks supports extension by plugins, and Code::Blocks Portable will work with any known plugins.

Logo

Release Notes:

Development Test 2 (2009-03-24):

  • Taken over by me (with permission)
  • New system of settings storage - gets everything right now
  • Completely rewritten launcher
  • Support for MinGW Portable
  • New and better icon
  • Latest PAF specs

Development Test 1 (2008-07-10): Initial release, by ZachHudock


( categories: )

Getting.

Getting and testing, like I said in the IRC.

OliverK> you don't live on a cow
IRC: It brings out the best in all of us...Especially when tired.

Testing

This is great!! Testing... thanks!

Faith sees the invisible, believes the unbelievable, and receives the impossible.

Works perfect :D

Works perfect Laughing out loud

Use the search box! Please!

Works fine with MSYS portable

Works fine with MSYS portable and a local install of MSVC++ 2008 on vista SP1.

Twoflower: Rincewind, I think there's a broomstick in this cupboard.
Rincewind: Well, what's so unusual about that?
Twoflower: This one's got handlebars.

Portable Code::Blocks

Hi Chris,

Thanks for your great work.

I have made few code changes to make Code::Blocks portable out of the box. The code is now in Code::Blocks trunk.

Code::Blocks was not portable due to the wxWidgets Standard Path implementation. I've made a patch which resolves this issue. So far I have tested and it works well.

I've written detailed write-up in my blog in the following 2 posts.
http://biplab.in/2009/04/creating-portable-version-of-codeblocks/
http://biplab.in/2009/04/creating-portable-codeblocks-part-2/

With this patch Code::Blocks can be run in a portable manner by setting APPDATA variable to any directory.

I've written a barebone launcher which can be used for this purpose. Also I've uploaded a prepackaged binary with launcher for testing purpose. Please see my blog for details.

Hope this simplifies portable Code::Blocks creation process.

Please feel free to discuss (preferably in our forum http://forums.codeblocks.org/)any issues related to it.

Best regards,

Biplab
Blog: http://biplab.in

Thanks!

That's great Smiling

I'll just say here though that I don't intend to do a new Code::Blocks Portable release off SVN, I'll wait till you get a new release out - any idea when that'll be? This is just because of standard PortableApps.com conventions. A new release very soon would be very nice Smiling

I was doing a patch along similar lines, but using another command-line argument. If you're looking at APPDATA though, if it's invalid, then the wxStandardPathsBase::Get().GetDataDir() call will also return an empty string, as it uses a Windows DLL call which if the USERPROFILE/APPDATA combination is not completely valid, will return an empty string. Thus as I see it at least, lines 15-21 and 23 are redundant.

As to the folder left in USERPROFILE, I presume that that would be USERPROFILE\codeblocks? If so, we can get rid of that if it's empty easily as part of the launcher (using RMDir without /r).

Code::Blocs Portable's future is looking even brighter!

Christian, developer, moderator

Re: Thanks

Regarding new release - that's a difficult question to answer. At least I don't see one coming in next few months. However if you intend to use Code::Blocks 8.02, you may patch it's source and use it. I can give you a patch if you need it.

I haven't encountered a case where line 15-21 and 23 are being used. I have kept them as a fallback. But if it's really redundant I'll be glad to take it out.

Yes, you are correct. Code::Blocks still leaves USERPROFILE\codeblocks folder. We can get rid of it via launcher. I'll post an updated launcher later.

Thanks again for your efforts making Code::Blocks portable.

Best Regards,

Biplab
Blog: http://biplab.in

A matter of policy

There are only two apps here at PortableApps.com which use modified apps (other than a more tightly-packed build as in BPBible's case). These are CoolPlayer, which got renamed to CoolPlayer+ because the main development team were being unresponsive, and anyway it needed a much nicer skin; and Cornice, which has ceased development, hence the bugfixes. Code::Blocks however is a bit different - it is (I hope!) still under development, and there are no major issues with it - just this portability thing! I (sadly) don't think that it really warrants making a custom build (8.02.1?). However, if the head here, @John T. Haller, reckons that it's worthwhile doing, I'd be very glad to do it to make it better Smiling

Yes, those lines really are redundant (I've had a lot of experience with APPDATA redirection and all things to do with it, I think I now qualify as an expert in it Sticking out tongue).

OK, good, glad that's the folder. We can scrap it easily then Smiling
It might be good though if we could just fix the actual code there. I can't remember exactly now the differences in config and settings directories and all, but is the answer around line 1399? (At least at the very bottom of src/sdk/configmanageer.cpp.)

    CreateDirRecursively(ConfigManager::config_folder);

Thank you for your efforts making Code::Blocks more easily portable!

Christian, developer, moderator

Quick maintainence release?

I've talked to John on IRC now and the question is, would it be possible for you people to make a quick release, e.g. 8.02.1, based on 8.02, but with the new code so that our version can run better? If you could also investigate my suggestion about %USERPROFILE%\codeblocks above that'd be good. If that was to happen then we could get Code::Blocks Portable out the door here quickly. If not, any idea when the next version will come out? That may influence what our next step is (custom build, current system or wait).

Thanks!

Christian, developer, moderator

please keep working on this,

please keep working on this, thanks Smiling

I agree. I prefer wxDev-C++,

I agree. I prefer wxDev-C++, but PA.c needs at least one of these and this so far seems more mature dev test wise.