Tuesday, December 27, 2011

Dev-C++ 5.1.0.0 released

Time for a properly updated version. This one comes with a readily working 64bit compiler and lots of new stuff, like an updated first time dialog.

Changes - Version 5.1.0.0 - 27 December 2011

This is the first version to fully support 64bit MinGW compilers! Just place one in a folder called 'MinGW64' next to devcpp.exe, Dev will automatically adapt itself to it!

When launching for the first time, Dev-C++ will set defaults based on available 32bit or 64bit compilers (favors 64bit).

The XP style manifest creator now also supports 64bit.

The "Delete Profiling Information" button now does not check for the gmon.out file 60 times a second to keep itself updated.

Compiler information in the log now does not show up twice when rebuilding a single file.

Project files with dots in their names now do not confuse the executable namer anymore.

One more update to the compiler progress window: the warning counter was positioned a bit too much to the right.

Added formatting support for 'Sorry Unimplemented' and fixed up 'Unknown escape sequence'.

The main form now properly maximises when not starting for the first time.

The main form child windows now properly scale themselves when the 'Tip of the Day' window is shown.

Slightly lowered startup times again.

The code browser toolbar now also shows types and struct members.

The code completer and code parser now use symmetric indices and _ID's, making them a lot faster.

Code completion cache is now created a bit faster and is smaller.

Updated the help file.

The tooltip now always shows up when it is supposed to, even the first time.

Added a new editor style called Classic Plus, which highlights symbols like { and (.

The Code Completion Cache creator can now also be told to cache a selection of files.

Updated MinGW32 to GCC 4.6.2. Added TDM-GCC 4.6.1 x64.

Added updated Chinese translations by cin.getline.

More stuff I forgot about.

Important notices

The options format has changed. If you want to reuse an old pre-4.9.9.3 config file (NOT recommended), or, more importantly, when you're overriding Compiler Options in your project, you need to re-set these project settings once and save the project. You'll then have an updated 4.9.9.3+ project file.

This version has GCC built-in instead of being an aditional package. It also contains D3D9/10/11, GDI, Win32 and OpenGL headers and libraries in that flavor.

This version is now fully portable. If you also don't want Dev to leave anything behind in the registry, please select "Portable" or "Minimal" in the setup options.

For ultimate portable programming, please launch devcppPortable.exe located in the main folder of the portable zip download. This will make dev save its configuration files in the same folder as the executable.

DownloadThe setup can be downloaded here: 32bit or here: 64bit. The Portable zip version can be downloaded here: 32bit or here: 64bit. The source code can be found here.

UpdateThe 5.1.1.0 Beta 6 update can be found here. Its source code can be found here.

Guide to choose between 32bit and 64bit

The 64bit compiler will also run op 32bit computers. Not problem at all.

The 64bit compiler can do everything the 32bit compiler can, including creating standard 32bit executables.

The 64bit compiler can do stuff the 32bit compiler can't, like creating 64bit executables. It also comes with a lot more headers and libraries.

There is no single reason to download the 32bit except for maybe file size, marginally longer compiling time, or in case you have to use that specific compiler for any reason (regression problems for example).

Guide to compile for 32bit using TDM-GCC x64

To force 32bit on all new projects and non-project compiles, go to Tools >> Compiler Options >> Settings >> Code Generation and set "Pointer Width" to 32bit.

Now open Tools >> Compiler Options >> Directories >> Libraries. Change the path ending with 'lib' to point to a folder called 'lib32' next to it.

Done!

Alternatively, one can create a 32bit and 64bit config based on one installation of TDM-GCC x64. Go to Tools >> Compiler Options and create a new set called TDM-GCC 4.6.1 32-bit for example. Copy all settings in the General tab from the x64 set. Then, for that compiler, set the settings described above to your 32-bit configuration. This way, you don't have to install two compilers!

For more information, please read the FAQ located here or in Dev-C++'s help file.

Dev-C++ favors 64bit folders when initialising for the first time. It won't configure itself for two compiler folders automatically yet. I'm thinking about adding that, but:

As you can see in the new guide in the post, MinGW64 can compile for x86 just fine too. You only need to set *two* options. That's all. Of course, you can also create two profiles to create a 'fake' x86 compiler (see the alternative bit).

@imnotanerd:

The code completion cache format has been improved, and old caches can therefore not be used anymore. Please remove cache.ccc in your config folder (%APPDATA%\Dev-Cpp for normal installs).

@Russian Anonymous:

Sorry, Google translate couldn't make much more than "You're garbage" (pretty useful comment you meant that, but I won't assume so) and a few other snippetjes like 'compiler' of your comment.

I backuped the old devcpp.ini in the AppData. After I finished the installation, I tried using Dev-C++ 5.1.0.0 as it was run first time. But it fail when switch -m32 on. After that, I use the backuped devcpp.ini to overwrite the current one, and replace the word "32" by "64" in the context. You guess what? It works! Now the new Dev-C++ works perfectly.

Both 32-bit and 64bit versions of the compiler,open full screen, no matter what i select from the shortcut.Aside from that, full screen mode does not actually take up the whole screen , but leaves a bar of the desktop visible on the upper side of the screen.

Ehm, is it possible to send a test to be (by email ) case which produces the error? I've only been testing the hovering stuff with my code style, so I might've overlooked some special cases.

Oh, and about 64bit: the common thing called 64bit is all about the internal type of a pointer. On 32bit, pointers are just ints inside. On 64bit, pointers are 64bit ints (__int64).

Standard integer storage types in C/C++ are defined by the programming language or API, not by your CPU type. 'int' will allways be 32bit, no matter what. Even 32bit C/C++ supports __int64. The advantage of a 64bit CPU is that it can manipulate these __int64 types directly, instead of in 'int' chunks.

My program is very simple so i was suprised about this errors. In this tab i have this:"Compiler: MinGW GCC 4.6.2 32-bitBuilding Makefile: "C:\Users\Adam\Desktop\Projekt1\Makefile.win"Executing make...mingw32-make.exe -f "C:\Users\Adam\Desktop\Projekt1\Makefile.win" allgcc.exe -c main.c -o main.o -I"C:/Users/Adam/Desktop/Studia/Infa/Dev-Cpp_32/MinGW32/include"

Ok so i tested 32 and 64 bit version the result is the same. But i go buck to 5.0.0.8 i compile the same code and the result from compiler tab is""Building Makefile: "C:\Users\Adam\Desktop\Projekt1\Makefile.win"Executing make...mingw32-make.exe -f "C:\Users\Adam\Desktop\Projekt1\Makefile.win" allgcc.exe -c main.c -o main.o -I"C:/Users/Adam/Desktop/Studia/Infa/Dev-Cpp 5.0.0.8 Portable/Dev-Cpp/include"

So i fight with your program hall day....I use Windows 7 64bit. I still have problem with "Compile & Run". I try many things in menager explorer there is no sign of my program. But Dev-C++ still show " Permission denied collect2: ld returned 1 exit status "

The only solution is delete .exe after close the program by myself.. How to fix it?

I'm new to C++, so pardon me if this question is awful. While trying to use OpenCV I followed this guide to set it up (http://opencv.willowgarage.com/wiki/DevCpp). Unfortunately it doesn't work. Does anyone know how to use OpenCV with the new version of Dev-C++?

I just want to say, this is a great blog. Thanks for all the instructional info about 3D rendering; I can actually understand what you are talking about! Many additional thanks for your work on Dev-C++. It has languished for several years and I'm very glad to see someone revitalize it.

I've always loved Dev-C++, it was my first IDE, and your updates are amazing. I'm crazy excited about the 64 bit integration. My only complaint is not being able to get SDL working under TDM-GCC x64... I've been googling for weeks but haven't found anything useful. Does anyone have any suggestions? The problem seems to be with directX 5... is there a way to force SDL to compile to openGL on windows?

I don't know unfortunately. I've got no experience with SDL or OpenGL, sorry about that. What I do know (and you do to probably) is that the TDM guys have been ripping out legacy API's. There is a more conservative x64 compiler available though: it's called MinGW64. You might want to try that one, but you have to build it yourself.

@Anonymous:

You can try theForger's tutorial: http://www.winprog.org/tutorial/

Otherwise, I strongly suggest buying a book on Win32, because, well, apart from theForger, there are indeed not very much proper tutorials available...

When I start Dev-C++ up maximized, the whole window is shifted down a bit, until I minimize it and then maximize it again.And when I un-maximize it (it's the button between the minimize and the close buttons), the upper-left corner of the window goes to a position slightly right of the center of my screen (and I can't see half of the window until I drag it to the upper left corner of my screen).If it helps, I'm on a netbook (1024x600 screen resolution).

Mr. Orwell, YOU ARE MY HERO! I couldn't stand those ugly floating tooltips from the old Bloodshed version. I like Dev-C++ too much to switch to another IDE. Now you have fixed this bug that has been haunting me for years. Thank you SO MUCH sir. :'D

Thanks for yout effort Orwell, to this day I still use Dev-C++ and it's great to see it back.Many people who bash Dev-C++ don't understand that keeping things simple can be better than forcing coders to use too many features that they didn't ask for in the first place. I especially the too complex projects used by other IDEs, which create lots of folders and releases even when I only want to compile "test.c".

I've experienced what they call a lack of free time. Apologies for replying so late.

Anyway,

@All the people who have trouble maximizing properly: update 6 and newer should fix your troubles. If not, please tell me.

@Pushkar112:

You can of course add new themes, but currently only at compile time. Do do that, follow these steps:- Download the source code.- Open source\images\.

The easy compromise way:- Edit the images in \newlook, \gnome or \blue.- Run CleanSource and CompileResources to rebuild resource files. - Rebuild devcpp.dpr to apply changes.

The hard way:- Copy the 'newlook' folder and name your copy 'mytheme' for example.- Now you're going to have to add a mytheme class to imagetheme.pas.- At this point, I don't have any clear guide available, but adding mytheme to any place that mentions newlook (or any other theme like gnome) should do the trick. The themes are unfortunately all rather hardcoded into Dev-C++. I should change that sometime.

And about the public folder: I'll see what I can do.

@bottom Anonymous:

To enable autocomplete for your own includes (#include "" and <>) go to Tools >> Editor Options >> Class Browsing >> Enable 'Scan global files referenced in includes'. It is recommended to cache these files to minimize parsing time. This should also enable you to use completion for most of the STL.

This caching process can also be done when running for the first time, simply by specifying the STL headers (like algorithm) in the caching pane.

Awards

Translators needed

Dev-C++ is looking for translators, because the author doesn't master all thirty languages Dev-C++ is (partially) translated in.

So, if you're willing to translate Dev-C++ into a language or update the existing translation, don't hesitate to open up YourLanguage.lng and start translating/updating, using English.lng as the reference language.