I personally LOVE Notepad++
I personally LOVE Notepad++
Here is some software that I use at the moment, just the ones I can think of off the top of my head. Note: everything mentioned here is free software; most of it under the GNU GPL, most of the rest under even less restrictive licenses, and all of it meets the Debian Free Software Guidelines and thus likely also falls under the Open Source Definition.
If you haven't already, you should try make and a debugger. They're absolutely essential. The names vary depending on what compiler you are using, but for GCC/g++, it's "make" and "gdb" (the GNU Debugger).
Some general programming software that I use under Linux (but works on other platforms unless otherwise noted).
- Valgrind: an excellent tool for detecting memory leaks, buffer overruns, and other errors of the sort. (Linux only.)
- Kate, KDevelop: Very nice IDEs for KDE (specifically, Qt, which means you could probably run them under Windows as well).
- Doxygen: takes your source code and generates documentation. Works best if you write special Doxygen comments, but you can use any source code written in C, C++, or Java (and maybe other languages as well).
I know it has already been mentioned, but version control systems are essential. Here are some of them, as well as related programs.
- Concurrent Versions System (CVS): once (and possibly still) the most widely-used version control system. It's basically a front end to RCS that supports multiple files.
- Subversion (SVN): a very nice version control system that supposively fixes some of CVS's issues. For example, versions are project-wide, so you don't have to compile main.c version 1.4 with network.c version 1.7.
- Kompare: the nicest (graphically) diff program I've ever come across. Check out the
- screenshot in Wikipedia and you'll see what I mean.
- kdesvn: the graphical client for subversion that I use, based on RapidSVN, but there are many of them out there. Makes using a version control system easier.
Do free libraries count? If so, some SDL ones, which are all written in C and thus work with C natively and are easy to use in C++:
- SDL: a portable, cross-platform graphics and sound and I/O library. It contains all you need to write a graphics application such as a game, and your resulting program runs almost anywhere, from Windows 98 to 64-bit Linux to Mac OS X. (Believe me, I've tried it on all three.)
- SDL libraries list: a huge list of libraries compatible with the SDL. The search option only lets you search titles, however, so I find it's best to display all results (which my link does) and use your browser's search feature.
- SDL_image: with this, you can open images in almost any format. Let's see; it supports BMP, GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, XCF, XPM, and XV. It's really easy to use, too. You just call IMG_Load(filename), and it figures out the type of the file etc.
- SDL_ttf: TrueType fonts for the SDL. You can load ordinary fonts like FreeMono.ttf (Linux) or Courier New (Windows). The resulting text looks much better than bitmap fonts. It's a bit difficult to use, but the result is worth it.
- SDL_gfx: support for drawing graphics primitives such as: lines, circles, polygons, ellipses, pies, in normal, anti-aliased (smoothed), and filled modes (and sometimes anti-aliased filled, too). Also supports image rotating and scaling or zooming. It also has other features that I've never figured out.
I can't recommend any particular GUI library for the SDL, because I like to write my own. But there are many. Search the libraries list above for a few. Or see:
- The GUI Toolkit: a very comprehensive list of GUI libraries. It's tough to read, but you probably won't find a more complete list anywhere:
dwk
Seek and ye shall find. quaere et invenies.
"Simplicity does not precede complexity, but follows it." -- Alan Perlis
"Testing can only prove the presence of bugs, not their absence." -- Edsger Dijkstra
"The only real mistake is the one from which we learn nothing." -- John Powell
Other boards: DaniWeb, TPS
Unofficial Wiki FAQ: cpwiki.sf.net
My website: http://dwks.theprogrammingsite.com/
Projects: codeform, xuni, atlantis, nort, etc.
>Kompare: the nicest (graphically) diff program I've ever come across.
Meld is also a pretty sweet diff front end. It lets you click sections of the file back and fourth when merging.
good job, very helpful
C++ BeginnerThere are only 10 types of people, those who understand binary and those who don't
Visual C++ 2008 Express Edition!
Windows XP
The firebird link took me to an irrelevant page. Hair products--hair shampoo, hair jewelery,hair loss solutions etc.
[edit]Hmm, Meld's directory diff also looks pretty nice. I might have a look at it. [/edit]Meld is also a pretty sweet diff front end. It lets you click sections of the file back and fourth when merging.
Firebird is really just an old name for Firefox, as far as I can tell. http://en.wikipedia.org/wiki/Mozilla_Firefox
Everywhere there are references to firebird, they just turn out to be references to Firefox . . . . I'm pretty sure that the Mozilla web browser briefly became Firebird and then was renamed to Firefox. (I have old versions of this web browser that call themselves "Mozilla Web Browser" or some such, no "fire" anywhere.)The Firefox project has undergone several name changes. Originally titled Phoenix, it was renamed because of trademark issues with Phoenix Technologies. The replacement name, Firebird, provoked an intense response from the Firebird free database software project.[8][9][10] In response, the Mozilla Foundation stated that the browser should always bear the name Mozilla Firebird to avoid confusion with the database software. Continuing pressure from the database server's development community forced another change; on February 9, 2004, Mozilla Firebird became Mozilla Firefox,[11] often referred to as simply Firefox and Mozilla prefers it be abbreviated as Fx or fx.[12]
In short: try Firefox. http://www.mozilla.com/en-US/firefox/
[edit=2] I had completely forgotten that I had posted in this thread, believe it or not. Anyway, here are some other programs that I'm using at the moment:
Software that came with GCC that you never knew you had:
- gprof (part of GCC): the GNU profiler. It's a very nice way to figure out what really needs optimising, though I can't get it to work very well for SDL programs . . . SDL_BlitSurface() takes 100% of the time, apparently.
- gcov (also part of GCC): a program to test code coverage. It lets you figure out what really gets executed, and what doesn't, and how often.
Also: Linux. Get Linux and you'll get so much free software you can do almost anything . . . I use Debian, but that's just because I like its package management system. [/edit]
Last edited by dwks; 02-06-2008 at 12:09 PM.
dwk
Seek and ye shall find. quaere et invenies.
"Simplicity does not precede complexity, but follows it." -- Alan Perlis
"Testing can only prove the presence of bugs, not their absence." -- Edsger Dijkstra
"The only real mistake is the one from which we learn nothing." -- John Powell
Other boards: DaniWeb, TPS
Unofficial Wiki FAQ: cpwiki.sf.net
My website: http://dwks.theprogrammingsite.com/
Projects: codeform, xuni, atlantis, nort, etc.
oh! yes i have firefox. I thought firebird is something different so i wanted to try it out. thanks.
It is something different. Firebird is an open source relational database management system.I thought firebird is something different so i wanted to try it out.
Look up a C++ Reference and learn How To Ask Questions The Smart WayOriginally Posted by Bjarne Stroustrup (2000-10-14)
Read the wiki about firefox or post a new thread. Lets leave this one for what it's meant to be.
Originally Posted by brewbuck:
Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.
Here are some more Open Source Apps
IRC Client: Pidgin
Web browser and editor: Amaya
IP Scan: Angry IP Scanner
Downlaod Manager: Free Download Manager
And if no-one has mentioned it: VLC Media Player
long time no C; //seige
You miss 100% of the people you don't C;
Code:if (language != LANG_C && language != LANG_CPP) drown(language);
PeerGuardian is pretty much defunct now, PeerBlock – Peerblock Site is based off PeerGuardian and doesn't suck
Thanks for this extensive list. I'm using sysinternals's autoruns utility - surely handy and much better than MS's msconfig
I will bookmark this, thank you for sharing the list. Everything I need to know and download are all here.