PDA

View Full Version : C ide?



achelis
September 30th, 2009, 11:58 AM
Hi
I'm just about to start on a project which needs to be written in C - not C++.

There is no GUI programming involved as the hardware the program is for has no screen.

I'm basically looking for something with syntax highlighting, code completion and preferably some way of helping with the overview of files in the project. And if it supports git it'd be a nice bonus not to have to go command line for that.

Any suggestions?

pepperphd
September 30th, 2009, 12:58 PM
Hi. There is a thread for this: http://ubuntuforums.org/showthread.php?t=752224

But since you want a recommendation, I would say Vim (http://www.vim.org (http://www.vim.org/)) provides functionality, ease of use, customization possibilities, and an 'out of your way' style that when combined makes for an excellent environment. It does however have a learning curve and you'll spend alot of time making it work just the way you want it to, which is worth it. After Vim, I'd say Kdevelop (http://www.kdevelop.org/), and Code::Blocks (http://www.codeblocks.org/) are also excellent choices.

davetv
September 30th, 2009, 02:31 PM
I use code::blocks quite a lot and highly recommend it.


To understand recursion you must first understand recursion ;)

peetbull
September 30th, 2009, 03:00 PM
Hello, everyone!

Although I am fan of Terminal+VI, I personally use Netbeans with the C/C++ plugin installed. I will post a few information about this IDE, just in case someone want to try it.

It is a heavy environment in terms of memory and CPU but, still, it's friendly; for example you can Ctrl+click on a function's name and it then opens the file from which the function originates.

And many more stuff like syntax highlighting, code completion, project-based and filesystem-based management and, at least to my knowledge, support for SVN, CVS, Mercurial versioning systems.

If your machine can stand it, then I guess it's worthy.

For more info: http://www.netbeans.org/features/cpp/index.html
Download at: http://www.netbeans.org/downloads/index.html
First steps: http://www.netbeans.org/kb/trails/cnd.html
Configuration for Ubuntu: http://ubuntuforums.org/showthread.php?t=1029485

I hope this helps anyone who would try it. I would still vote for VIM or Code::Blocks, though. It takes some experimentation for your best fit, Achelis!

Happy coding!

:-({|=

samjh
September 30th, 2009, 03:05 PM
I'm basically looking for something with syntax highlighting, code completion and preferably some way of helping with the overview of files in the project. And if it supports git it'd be a nice bonus not to have to go command line for that.

Any suggestions?

For that, you only really need a decent code editor with efficient file access features. Geany or Gedit with the gedit-plugins package should be adequate.

Personally, I just go for vim when it comes to C programming.

ve4cib
September 30th, 2009, 04:53 PM
Lately I've been a big fan of Geany. I haven't used it for straight-C, but I've used it with some wonky hybrid C/C++ code and it worked fine. Syntax highlighting, auto-completion (to some extent), symbol/function/variable list, and a terminal embedded in the application so you don't need to change windows to compile. Very nice text editor overall.

diesch
September 30th, 2009, 05:05 PM
IMHO Emacs is a good choice, but usually needs some customization. See http://www.emacswiki.org/emacs/CategoryProgramming for some tips.

napsy
September 30th, 2009, 09:51 PM
use vim:

ctrl+n gives you code completion
install cscope and nerdtree plugins for browsing the source
configure your .vimrc and remap the keys to your liking.
set up your preferred colorscheme.

Can+~
September 30th, 2009, 10:05 PM
Eclipse with the C plugin (http://www.eclipse.org/downloads/).

achelis
September 30th, 2009, 10:49 PM
Thanks a lot guys. Definitely given me some options to consider and play around with :)

So far I've installed emacs, eclipse and code::blocks and they all seem to do nicely for my needs. Code::blocks doesn't seem to have Git support though?

Now I just need to start coding :)