Page 1 of 2

IDE

Posted: Sun Jul 13, 2003 7:44 pm
by be
Hello out there! Tell me what IDE do you use! :)

Re:IDE

Posted: Sun Jul 13, 2003 11:01 pm
by The Pro from Dover
UltraATA 100.

Of course, if you are talking about Integrated Development Environments, you may want to re-ask on the General Programming board, unless you were specifically asking in regards to OS development.

Generally speaking, I favor Emacs and a lot of Elisp code; while it isn't quite as visually exciting, it it more powerful and flexible than just about anything else around. It does take quite a bit of learning to use, however, and so I often just use Notepad (under Windows) or pico (under Linux) for quick editing jobs. For working on Windows apps, I use Visual Studio; when in Rome, as they say. However, the MS tools are very tightly bound to the system, and trying to use VC++ et al for OS development is a sure road to frustration. I have not tried Dev C++ to date, so I can't comment about it; perhaps I shall take a look at it. I've used NASMEdit quite a bit; it's quite spiffy, and a definite improvement over NASM-IDE, but it's very slow and limited, and has some definite rough patches.

There's also, DR Scheme, of course, but that's not going to help you unless your taste in languages runs like mine.

Re:IDE

Posted: Mon Jul 14, 2003 2:35 am
by be
I use only "FAR File Manager" for now :). Not so useful, but pretty, especially with colorer plugin :)

Re:IDE

Posted: Mon Jul 14, 2003 3:05 am
by Pype.Clicker
i'm aspirant to the grade of Member of St Gnucius Church, so i observe Stallman's #1 commandment :

"thou shalt not use another text editor than emacs" :-p

Query-Replace, two-keystrokes search (forward & backward), integrated DIFF between files, and the ability to perform any keybinding (global-set-key '[F12] goto-line) and writing "background operations" like loading a file which name has been written somewhere by another program just makes me happy.

Command-line invocation of "make all" is just fine for me ... and an IDE is pretty toyish when you come to OS dev (as the debugger will probably not be able to run your kernel and the Classes Library Documentation don't apply to your libraryless code :)

Finally, [Esc+X] speedbar also gives me the power of most of the IDE file picker, so i'm just glad with it :)

Re:IDE

Posted: Mon Jul 14, 2003 7:30 am
by Jamethiel
Command line for 'make all'? Whatever happened to M-x compile, followed by C-x ` to jump to each error in turn?

I only really have two problems with emacs. One, M-C-v for scrolling the other window doesn't work in KDE (the WM hijacks the chord), and two, I keep hitting C-a instead of C-x and vice-versa (I run everything in a screen session these days), although this did show me vertical-split emacs windows (C-x 3), so I'm happy about that...

Of course, I don't use this setup for OS dev, since my OS has been almost completely self-hosting for the past several months, but this is what I did use until it was self-hosting, and probably what I will use for my next OS project as well, at least until -it's- self-hosting.

Re:IDE

Posted: Mon Jul 14, 2003 12:02 pm
by Tim
Visual Studio 97! F7 to make, then F4 to step through each error.

Re:IDE

Posted: Mon Jul 14, 2003 12:43 pm
by Pype.Clicker
The reason why i don't use stuff like M-x compile or Visual Studio is that my makefile expect some environment variables to be set and it's easier to make sure those are set in a shell that in an IDE...

it may look weird, but that's mandatory to allow compilation independently of whether Linux or DOS is the host environment...

Re:IDE

Posted: Mon Jul 14, 2003 1:36 pm
by bkilgore
can you configure microsoft's visual studio to run gnu make instead of it's own tools? or do you use microsoft's tools to compile? Right now I use a visual studio project to edit my code and for searching through files and basically everything expect compiling. For that, I go to a DOS window and run make. Is there a way to run make with F7?

Re:IDE

Posted: Mon Jul 14, 2003 2:06 pm
by Jamethiel
Pype: There's no reason you couldn't have M-x compile run a shell script to set your environment variables and kick off make. Or even just set the environment variables as part of the command for kicking off make.

I find it -very- hard to work without C-x `.

Re:IDE

Posted: Mon Jul 14, 2003 2:36 pm
by Tim
bkilgore: Sure you can. One of the options for a new projects is a Makefile one, where you can enter the command lines for Debug and Release, Build and Rebuild All.

Visual Studio 6 seems to lose any environment variables when running make, so it's best to write a batch file that sets up PATH etc. and runs make. Visual Studio.NET handles it much better. Note that gcc's error message format is incompatible with VC++'s, so although you'll see error messages in the Output window, you won't be able to double-click on them.

Re:IDE

Posted: Tue Jul 15, 2003 12:01 am
by Solar
I guess my setup is a wee bit "sick"... I'm running Win2k using UltraEdit as editor (gasp - no vi, no emacs!) and Cygwin for bash / as / ld / gcc / make.

Reason is basically all the other stuff I'm running which wouldn't work under Linux (I tried!), like sync'ing my HP 720, using my WLAN card, or working with my favourite file manager (Directory Opus).

For the stuff where Cygwin doesn't do the trick, I keep a Knoppix CD close at hand. (Too scared to build myself an ELF target gcc cross-compiler, basically. ;-) )

Re:IDE

Posted: Thu Jul 17, 2003 1:54 pm
by VE3MTM
OS: Gentoo Linux (2.4 kernel)
Editor: ViM (and occasionally Emacs... I think I'm switching)
Compiler: GCC
Assembler: NASM

Though really, you can't beat *nix for OS development. I highly recommend using *nix. I don't think I'd be able to stand using anything but command line tools. GUI IDEs are too clumsy

Re:IDE

Posted: Thu Jul 17, 2003 2:16 pm
by bkilgore
OS: WindowsXP
c compiler: DJGPP gcc
assembler nasm
editor: Microsoft Visual Studio (w/ Visual Assist)

I think graphical editors like visual studio make life much easier, especially with a plugin like visual assist. I don't think unix boxes are a must for devving at all, as I have always used my windows box, and tools like cygwin and djgpp make it to use what one were usix-only programs. Although I have found Linux quite handy, when looking for examples of how to do what I'm trying to do with my OS. :)

Re:IDE

Posted: Fri Jul 18, 2003 1:22 pm
by VE3MTM
Really, at first you look at a program like Emacs and think "how is this better than [some IDE]?". Then you realize that it has everything that IDE has, and possibly more. And if it doesn't come with the default config, chances are someone has written a plugin.

Abbreviations? Integrated debugger? Integrated RCS/CVS? Code completion (including the nifty hippy-expand)?

Whoever said bloatware was bad?

PS. Emacs is my friend now... I wrote TopCoder (www.topcoder.com) last night using it, and it completes me

Re:IDE

Posted: Fri Jul 18, 2003 1:33 pm
by Solar
The thing I dislike about either vi or emacs is the steep learning curve.

In UltraEdit, I have a GUI, and menus. When I feel the need for a new feature, I usually scan the menus for it. Once found, I know roughly where to find it again. If used often, I'll memorize the keyboard shortcut printed alongside the feature in the menu.

With either vi or emacs, if I need a feature, I have to look it up or ask someone proficient.

Get me right, I use vi every day alongside UltraEdit (quicker to invoke, for small changes etc.), but for the real editing I prefer UE because I simply hadn't found the time to check out how to do e.g. block mark / cut / paste in vi.

vi and emacs, imho, are a self-fullfilling prophecy: They're everywhere, so everyone learns how to use them. Somewhat like Windows: It's high time for something better, but the inertia of the market won't let this happen.