Archive for the 'Software' Category

GCC-4.4.0-MinGW Binary

April 25th, 2009

GCC-4.4.0 has been released recently. I have managed to compile it as a MinGW build and I want to share that with others. The package can be downloaded from the following links. Please download both the files and extract them to C:\MinGW folder. Then extract Win32API, MinGW Runtime, pthreads-win (If you want to use OpenMP) package to the same folder. Now you’ll be able to use gcc-4.4 on Windows.

Download Links: Continue Reading »

Creating Portable Code::Blocks: Part 2

April 13th, 2009

To update all I have committed patch in trunk (in revision 5334). It should be available with the next nightly.

To run Code::Blocks portably you can write a batch file, set APPDATA variable to any directory you want and then launch Code::Blocks.

Alternatively you can download the CbLauncher v0.1.1 from my blog to run Code::Blocks portably.

Steps to use Cblauncher: Continue Reading »

Creating Portable Version of Code::Blocks

April 5th, 2009

Recently I was irritated by the fact that Code::Blocks is not truly portable on Windows. Usually I keep two versions of Code::Blocks in my PC. One is the last released nightly and the other one is the one that I build from trunk. I use last released nightly to write code. However as Code::Blocks is not truly portable, these two versions of Code::Blocks share same configuration file.  Sometimes I run my newly built Code::Blocks from trunk, it crashes and corrupts my customised configuration file. And this irritates me a lot.

Other than this, you really can’t copy your configuration folder in a portable drive and expect entire Code::Blocks installation to behave as a truly portable software. There is one way; using personality feature of Code::Blocks. but that solves only one half of the problem. Yes, this makes your Code::Blocks portable. But your plugins are not! They still read their own settings from the default folder which is %APPDATA%\CodeBlocks folder. Continue Reading »

File permission bug of C::B

June 23rd, 2008

A nasty bug was discovered by one of our user couple of months ago. The bug was affecting our last stable release as well as our latest nightly.

The bug was due to the way a file was being saved by C::B to avoid corrupting the existing file. C::B used to write the new contents to a temporary file before deleting the old one and then renaming the temp file to new file. But this created a bug as the temporary file may/may not get the file permission attributes of the original. Continue Reading »

Vote for us at SF.net

May 26th, 2008

Last year we went to the finals of SourceForge.net Community Choice Awards 2007. But we could not win it.

This year we have another chance. The nomination for the SourceForge.net Community Choice Awards 2008 are now open. If you love Code::Blocks, please nominate us by clicking the following link.

You can nominate us under Best Project, Best Project for the Enterprise or Best Tool or Utility for Developers category. Please note that you can nominate us in multiple categories. Also you would need a SourceForge.net account to nominate us.

Thanks for your support. :)

Unicode Support in Code::Blocks

October 26th, 2007

Code::Blocks (C::B) had a long known problem of crashing / locking up while an accented character is used in the code. Or even worse when the encoding of a file is changed from one encoding to another. It was able to support upto UTF-8 encoding with occasional lock-up.

I started working on this around 2-3 months back. But during testing we found that C::B still hangs and it is due to Code-Completion (CC) plugin. The issue was due to the presence of some ANSI functions in Code-Completion parser. Morten then started his work to fix this. It almost resulted to a small re-write of Code-Completion. And we could finally test our Unicode changes with CC enabled.

We tested it for couple of weeks before we found it to be stable enough for further real-life testing by our users. In revision 4548, the first collection of patches were committed (including Morten’s patch on CC). Few users posted some issues which were then quickly resolved. As of writing, the code seems to be quite stable.

So what are the changes that have been made??

There were a number of changes that has been made.

  1. Encoding detection code has been improved by using a portion of MadEdit’s encoding detection code. Currently it can detect, UTF-8, UTF-16 BE/LE, UTF-32 BE/LE with/without BOM. The fall back code has been kept to ANSI (CP-1252 on Windows).
  2. Encoding conversion routine has been overhauled. Now it converts back and forth all supported encodings flawlessly.
  3. Now all the encoding detection and conversion code is much more efficient as it involves minimum disk reads and most of the operation is done in memory buffers (Thanks Thomas for keeping this strict criteria).
  4. The file load routine has been moved from a all in one load-plus-encoding detection code to efficiently distributed code.
  5. File save routine was overhauled to save files with all supported encodings.
  6. Project load routine has been tweaked to reduce the stalling while opening a large project with a large number of open files in it.
  7. Morten made CC parser Unicode compliant so that it can now parse any files without a single lock-up.

I would request users to use Build Revision 4553 onwards to get the most benefit out of it. Please post any related issues in the forum itself. :)

Code::Blocks August-September Month Update Summary

October 14th, 2007

As usual the update summary is full of new changes made to Code::Blocks and lot of bug fixes.

Summary:

  • Help plugin now supports browsing of Man pages.
  • wxSmith got number of new features including support to visually edit layouts, add events, etc.
  • Support for generated source files in build system.
  • Few critical bugs have been fixed. This included a well known DDE bug, crash at close bug, project file corruption in some cases bug, etc.

Please note that the following changelog is based on SVN commit history of past two months. Detailed and organised changelog is as follows. Continue Reading »

Save Bandwidth – Download Delta-ISO

August 15th, 2007

If you love to try latest GNU/Linux distributions then you may save yourself from downloading full Linux ISO everytime a new version has released. As the Linux ISOs are large in size, downloading them burns a huge amount of bandwidth both for the publisher and the end-user.

Couple of GNU/Linux distributors including OpenSUSE, Sabayon have started publishing Delta-ISO. This is basically an ISO file containing only the additions/updates/changes with respect to an old version. It contains binary diff of all the distributed packages. Thus the ISO is smaller to download.

On 9th August, 2007 OpenSUSE-10.3 Beta 1 was released. In the next few paragraphs, you’ll learn to convert the delta-iso to a full iso. I had downloaded OpenSUSE-10.3 Alpha 7 iso (openSUSE-10.3-Alpha7-GNOME-i386.iso) earlier. To create a New ISO of OpenSUSE-10.3-Beta 1, we need a delta ISO. Now browse to the following folder in any OpenSUSE mirror and download the appropriate delta iso.

/pub/opensuse/distribution/10.3-Alpha7/iso/delta/

For me, openSUSE-10.3-Alpha7_Beta1-GNOME-i386.delta.iso, is the appropriate one.

Now download applydeltaiso utility (for Windows). Then in the command line issue the following command. There’s a bare minimum GUI of applydeltaiso utility at the same link. You may wish to use the graphical utility, too.

applydeltaiso openSUSE-10.3-Alpha7-GNOME-i386.iso
              openSUSE-10.3-Alpha7_Beta1-GNOME-i386.delta.iso
              openSUSE-10.3-Beta1-GNOME-i386.delta.iso

Voila!! After 5-10 minutes (depending upon your hard-disc speed) you’ll get a new ISO by downloading just 189 MB of data!!

But please keep the following points in mind.

  1. Your hard disc should have enough space to create the new iso.
  2. If you are using FAT32, then 2GB limit will be applicable to you.
  3. Don’t forget to verify the new ISO by comparing it’s MD5 checksum with the one published by publisher (in this case OpenSUSE).

So keep enjoying latest changes in GNU/Linux world!

Code::Blocks July Month Update Summary

August 10th, 2007

After another month long development of Code::Blocks (C::B) by the C::B Dev Team (including me), we made the following modification / improvements. Apart from adding couple of newer features we’ve fixed a number of annoying bugs, improved the stability and usability of it.

The following changelog is based on SVN Commit History of July 2007. Please note that this is not a Release Announcement and the changelog contains the commit made by entire C::B Dev Team in July 2007.

BTW, C::B has not won the SourceForge.net 2007 Community Choice Award as a Best Tool or Utility for Developers. I would like to thank you all on behalf of C::B team for supporting & voting us and putting us in the final list.

Summary

  • Added support for additional resource files to be added in resource package. This means now plugins can freely install extra icons and other resource files to the share folder of C::B.
  • Added support for version detection of compilers during runtime. This is currently used for GCC (MinGW) compiler. This adds the possibility to detect a compiler version and appropriately turn off incompatible/deprecated compiler options between versions.
  • Code-completion got a number of updates. It’s parser received some long-demanded updates and fixes.
  • Added support for Tooltips of variable, objects in the editor.
  • Project import code has been moved from SDK to a new plugin “Projects Importer”.
  • Added support for Remote Debugging.

Detailed changelog is as follows. Continue Reading »

Code::Blocks June Month Update Summary

July 11th, 2007

We made a lot of improvements in Code::Blocks last month. As usual the list contains a large number of bug-fixes, new additions / improvements made to Code::Blocks.

Summary:

  • Scripted wizards’ layout problem has been fixed. This bug was affecting Linux users with wx-2.8.x runtime.
  • A large number of compilation warnings were fixed. Now C::B would compile with wx-2.6.x or wx-2.8.x without annoying warnings. These warnings were popping up due to the code changes in wxWidgets 2.8.x.
  • Fixed major memory leak.
  • Code-completion got a lot of improvements.
  • Code of Internationalization of C::B has been changed. Please visit the forum for more details.
  • wxSmith got some huge update.

Detailed changelog is as follows: Continue Reading »

Next »