Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Education

GCC-based IDE's for DOS? 39

PM4RK5 asks: "Today in computer science 3, I was plugging away at compiling a string class in Borland C++ (version 3.x), and came across a glaring problem, in terms of compiler problems, not source problems, as I had successfully compiled the same source code earlier using GCC on Linux. Now we're looking at using DJGPP as it uses GCC/G++ and has a comparable IDE (RHIDE) to the Borland IDE, even though some features aren't available yet. However, before we use this on every computer, are there any better GCC-based IDE's and/or compilers for the DOS platform? Maybe any that support the Win32 GUI? (for those of us bold enough to try). I have to admit, I much prefer developing on a *NIX platform, but school computers are limited to Windows/DOS. Even if there aren't any better IDE's, it will still be nice to have a better compiler on hand with GCC and RHIDE. Any suggestions would be appreciated."
This discussion has been archived. No new comments can be posted.

GCC-based IDE's for DOS?

Comments Filter:
  • wait, i'm confused (Score:3, Interesting)

    by Anonymous Coward on Thursday January 17, 2002 @06:56PM (#2858498)
    Are you running windows or dos? Are you looking for zero or low cost (I'd guess yes if you're using a seven+ year old compiler)? Really, RHIDE is comparable to the borland interface, and gcc/g++ will knock the pants off of turboc 3.0's c++ code generation, simply becuase turboc 3.0 is ANCIENT. Actually, you can get a dos VIM as well as (part of djgpp) make and whatnot, so why even bother with an IDE? IDEs really do very little but coddle students. Or, get a dos ssh client and make people shell to a free unix host like linux or *bsd. If you're actually running Windows, putty is good (google for "putty ssh download"). If you're running windows AND your school has money, the Metrowerks compiler is pretty good for education (MSVC is just too goddamned quirky and complicated for me to recommend). I hope this doesn't come across as a flame, but if you are in the third section of a CS course and they have you all writing string classes (hello, STL?), win32 gui programming with c++ (which pretty much means the awful, horrible, abortion known as mfc) is waaaaaay harder than what you or they want to get into. There's a ton of interesting things you can do with c++ that don't involve GUIs. e.g. networking code, interacting with a database, console-graphics user interfaces, etc. heck, as a semester long project write a point of sale system using some old 386s as console-mode clients hooking to a central server that you write (networking code) that stores the transactions in something like berkelydb or mysql or something... Do it in teams, require documentation, have the teacher set milestones, etc. Have the whole class earn the same grade based on the functionality of the system. This will be the closest you ever get in school to what it's like to be a real world programmer.
    • Really, RHIDE is comparable to the borland interface, and gcc/g++ will knock the pants off of turboc 3.0's c++ code generation, simply becuase turboc 3.0 is ANCIENT Not that Turbo C is a bad compiler, it's more of the fact that it is 16bit rather than 32...
    • This will be the closest you ever get in school to what it's like to be a real world programmer.

      Your suggestions are good, but I would say our questioner's experience dealing with differing compiler abilities is just like that of a real world programmer. What I work on requires a bit of fighting with the MS compiler, gcc, Sun Forte and Workshop to get them to agree on code.

      Also, just because STL implements string classes doesn't mean a student shouldn't try to do the same thing. But I'll skip the tedious teacher talk.

  • Emacs (Score:2, Interesting)

    by MadCamel ( 193459 )
    EMACS has a DOS port, and there are packages for EMACS to turn it into a fairly decent GCC IDE. I have no DOS/Win machines, but perhaps you should give it a try.
  • Try Cygwin [redhat.com], which has a Win32 port of gcc. As for IDE's, I used RHIDE waaaaay back in the day with DJGPP, and it was decent, I suppose. But really, when you've got vim, what more do you need? :)
    • Comment removed based on user account deletion
    • How about just using the native "port" called djgpp [delorie.com]

      Here's a quote from the djgpp faq [delorie.com]

      The core of DJGPP is the MS-DOS port of the GNU C/C++ compiler, GCC, and auxiliary utilities, such as assembler, linker, librarian, Make, and a hypertext docs browser. The DJGPP C library was written specifically for DJGPP, mainly by DJ Delorie himself, with help from a small group of volunteers. This core set of utilities and libraries is still actively developed and maintained.
      • How about just using the native "port" called djgpp

        Well, the story mentioned DJGPP, so I assumed he already knew about it :) Plus, he was asking about Win32 compilers. DJGPP is DOS-only.
  • fire up cygwin and you've got all you need; make, vim, g++? the cygwin project has become incredibly impressive. my windows boxes magically suck much less (if they would manage to stay up throughout the day).
  • For Win32 (Score:3, Informative)

    by Anonymous Coward on Thursday January 17, 2002 @08:10PM (#2859017)
    Dev-C++ [bloodshed.net] is a nice packaging of MingW with a workable IDE. It's not exactly the best IDE I've ever used (IMHO it's a little shabby compared to the later Borland IDEs), but it's good enough for beginning programmers to cut their teeth on before they move to a Real Editor like vim or Emacs. Plus it's Free (as in speech) and free (as in beer), which is nice for an educational environment.
    • Re:For Win32 (Score:2, Informative)

      by jensend ( 71114 )
      Dev-C++ is currently undergoing 5.0 development, and will be a very good tool when it reaches that milestone. I don't know whether or not the 4.0 series is solid/"non-shabby" enough for a full class. DJGPP has always been the best option for DOS and continues to be a great option for windows, IMHO. When Dev-C++ 5 comes out, however, I think DJGPP will be surpassed.
    • I'd have to say that Dev-C++ is the most utter piece of crap I've ever used. Broland 5.0 is FAR superior to it in my opinion, and it's a lowly 16-bit DOS tool.

      Dev-C++ absolutely refuses to allow me to use any library function from #include "conio.h" such as clrscr(); and getch(); at the end of my programs to pause results in function redefintion: getchar(); error messages. The same thing works perfectly in Broland...

      I think they need to get their act together and clean the program up before it'll be worth anything. The best compiler in the world is only as good as the IDE tied to it, if you're using that. If no IDE, it's as good as your command line skills.
    • I'm just wondering what folkz have tought of VIDE ... http://www.objectcentral.com/vide/ hfx_ben http://hfx_ben.blogspot.com/

  • OK, I apologize for any confusion, but we're using Borland 3.x (I don't know the 'x'). But yes it's ancient, and thats the problem we've run in to. But the problem is, I'm looking at deploying this in a high school environment, and we need the IDE for debugging our programs, as that is what all the students are used to already.

    I'm used to both the Borland IDE, and VIM/GCC/GDB in Linux, but nobody else in the class would be. We've all run in to quirks with the Borland compiler so that's why we want something new (copmiler-wise, and gcc is both free and extremely good, IMHO) with a familiar IDE, or one of comparable usage.

    I hope this clarifies some of the questions.

    So far it sounds like RHIDE is the way to go (with DJGPP), and those of us that want to can still use Makefiles to manage multiple-file projects. (I'd probably have to explain that to the class) Also, from my experience, we'd also be able to use RHIDE for both C++ and Pascal via gcc and Free Pascal. So this could provide an all-in-one solution for our Computer Science department.

    If I convince the teacher(s) to use it, it will be a score for OSS =)
    • For what work I have to do on DOS, I like the "GNU Tools for MS-DOS and MS-Windows" publication by the Free Software Foundation. They recently came out with a second edition. I urge you to buy the book and CD from the FSF, but the .iso of the CD (which has the text of the book) is on gnutella and probably elsewhere too. Leave some copies of the book around, some of the kids might read it.

      The development environment should be emacs and Makefiles. Maybe vim instead of emacs. But for the type of projects you would do in a class, the build process won't be that complecated. If you make one Makefile that builds two .o's and links them together, people should be able to take that as a template and do all they need to do. Yes, there will be some time spent learning make and emacs instead of programming, but emacs/vim and make (and gcc) are available for almost any platform the students are likely to encounter, and you will be betraying them as a teacher if you don't teach them stuff they can use.
    • For high school I would have to say that deploying DJGPP + RHIDE would be the least traumatic for your students.

      I can understand that others might feel that "coddling" students with an IDE is a bad thing... but honestly -- if the "average" high school kids of today taking compu-sci related classes are anything like they were when I was in high school... they aren't going to get very far on a cygwin/vim/gcc/gdb type solution as the learning curve is far too steep for the limited time you have to actually teach in your typical high school course.

      Your average student will end up spending more time asking questions along the lines of "How do I delete a block of text in VI?" as opposed to the more important questions centered around basic software development and debugging.

      Just my $0.02...
  • Wasn't Al Stevens (of Dr. Dobbs fame) working on just this? I don't remember right now, but I seem to remember it fitting the bill. Here's a reference link I found in google:

    http://ai.kaist.ac.kr/~ymkim/Program/c++.html [kaist.ac.kr]

    Search for "d-flat Al.Stevens" and you'll find a bunch of stuff.

    • Quincy (Score:2, Informative)

      by Otter ( 3800 )
      His C++ book (which I recommend) came with a free gcc-oriented IDE called Quincy [midifitz.com]. I never tried it, not having Windows, but the screenshots look promising.
  • by qurob ( 543434 ) on Thursday January 17, 2002 @10:43PM (#2859709) Homepage
    Shamelessly cut+pasted

    Tools for programming and developing your project
    Programming enviroments

    Robert Höhne developed (with the colaboration of some friends ;-) a whole IDE (Integrated Development Enviroment) with the same look & feel of the Borland's IDE but more powerfull ;-). It's called RHIDE. I contributed to this project with the Help classes (aka InfView, to read the Info files) and the text editor (specially designed for writing C/C++). The last stable version is 1.4.9 and is available for Linux too!.

    A very used enviroment in the world of Linux is the GNU Emacs. Emacs is a very huge and powerfull editor that can be customized by the user. The program is splited in various ZIP files. Now v20.5 is available for DOS.

    For people that comes from UNIX there are a VI clon for DOS called VIM (http://www.primenet.com/~imbe/vim/ The link seems to be broken, if you can get it download the sources and compile it). The sources of the last beta version (5.0t that compiles with DJGPP) can be obtained here. A GUI Shell for windows is available too.

    SET's editor (SETEdit) v0.4.41 by ... SET, that's: by me ;-). SETEdit is a very powerful editor with a lot of tools for programmers (is the one used by RHIDE). That's the last version publicly available. If you want to cooperate just contact me. Free, donations accepted ;-). For information and downloads visit this page. Last beta version is v0.4.49 and is a candidate to become the next stable release. A test binary for Win32 (native Win32) is available. Debian packages and test versions for Linux/PPC and Linux/SPARC are also available. We need help to fully support Solaris and FreeBSD, also to fix problems in Linux/Alpha.

    Lemur 0.3 (alpha) by Endlisnis scanning program. It is a sLisp script for Setedit (and hence RHIDE) plus a program to look up function prototypes, structure members, etc.

    FTE is a portable editor compiled with djgpp under DOS, is available for Linux, X-Windows and OS/2 too.

    DFE 95 by Will Weisser is a native win32 IDE for Windows 95. Is available in Simtel too (/v2apps) but 3.4 is only in this link or try this. Free. Sources. The author abandoned the project but Exuviae announced a new GUI called DFE98 (was in http://home.sprintmail.com/~exuviae) or try here, I'm not sure if that's the continuation. Note: the version I downloaed in november 1997 wasn't very stable.

    colgcc by Richard Dawe colours the output of gcc to highlight warnings and errors. Useful for command line funs. Now v1.2 available. Sources. GPL.

    RSXIDE by Rainer Schnitker is a IDE for Win32 systems. It can be used for RSXNTDJ.


    Personally, I like RHIDE and DFE. Haven't done any DJGPP in forever!

    I can remember the days building Allegro on my Pentium 75!

    ------------

    Oh, here's a link for a billion Windows editors:

    CNET Download.com [cnet.com]
  • BC 5.2 (Score:2, Informative)

    by soundman32 ( 147936 )
    Why not download the latest (free) Borland command line compiler, and use that (using makefiles if necessary). It's much more up to date than the 3.x one (obviously).
    • Unfortunately for BC++ 5.2, it sucks badly...very badly. It was released before the STL standards were fully finalized so they *guessed* at what they would be and it is really =80 percent compatible with real STL. 5.5 is somewhat better, but at that point you lose the functionality of the 5.2 gui. Borland C++ compilers (with the distinct exception of Builder 5!) are just a very bad idea. (I have had several classes in which I was required to write my programs in Borland 5.2 to "guarantee" compatability with the teacher's machine... problem is even on the constantly re-ghosted, as identical as humanly possible computers in my university's computer lab... one machine will compile your program totally differently (with random sets of errors) even as compared to the machine right next to it.) anyway, that's my rant.
      • the above that appears as an = was typed as a c less than or equal to statement, and the less than sign was apparently eaten somewhere in the middle. (html whatnot I imagine)
  • Source Navigator (Score:2, Informative)

    by KarlH420 ( 532043 )
    Try Source Navigator. [redhat.com] It works on windows, and UNIX's
  • Not GCC, but....

    http://www.openwatcom.org/
  • by lkaos ( 187507 ) <anthony@NOspaM.codemonkey.ws> on Saturday January 19, 2002 @12:07AM (#2866423) Homepage Journal
    Emacs offers syntax highlighting, integrated debugger support, keyboard macros, next error jumping, etc.

    Emacs the most powerful IDE out there. It integrates real nicely with GCC. The only down side is that there isn't a GUI oriented 'project' builder but that's what Make is for :)

    I mean, it's easier to make a Makefile containing:

    SRCS=File1.c File2.c
    OBJS=$(SRCS:.c=.o)

    all: ProjectName

    ProjectName: $(OBJS)
    $(CC) -o ProjectName $(OBJS)

    Than to putz around with all that silly wizard stuff. I'll never understand why programmers need GUIs to generate code to compile their code.

    I gather from your responses that this is for a school, and the simple fact of the matter is that most production environments (and consequently, most programming jobs) are Unix based so learning about Makefiles and how to use Emacs has to be incredible valuable (I know I wish that the new hirers we get would have been taught this stuff in school...).
  • I have played a bit in the past with this issue, and come to the conclusion of mingw [mingw.org] (Minimalist GNU for Windows) and the dos/windows version of VIM [vim.org]. With this approach you sidestep the issue of cygwin.dll being GPL rather than LGPL, and thus can release proprietry programs if you choose. The windows version of GVIM (Graphical VIM) has the ability to use the commons windows hotkeys and so on, as well as the normal vim shortcuts, so users comfortable with either should feel at home. Another advantage MinGW has is the size of generated executables, by default they are so much smaller than cygwin and MSVC executables.
  • Can someone explain to me how I would go about setting up the former? I take it I'd need all the GCC tools, but would it allow me to create working Win32 programs?
  • There was a good article [slashdot.org] with similar question (but for Java). Well, the program EditPlus [editplus.com] has an intersting system of "scripting" that permit you to create menu with custom command, like compile, run, debug; in a dialog panel or directly in a ms-dos prompt, with any type of compiler. And the color coding of keywords is very good (in c/c++).

    The negative aspect is that EditPlus isn't free.

Saliva causes cancer, but only if swallowed in small amounts over a long period of time. -- George Carlin

Working...