emx

From EDM2
Jump to: navigation, search

emx (Eberhard Mattes eXtender) is an environment for creating 32-bit programs for OS/2 and DOS with the GNU C compiler (GCC). The main design goal of emx is to simplify porting Unix software to OS/2 and DOS.

The package contains tools for creating 32-bit programs which run both under OS/2 2.0 (6.167 or later) and MS-DOS (using an included DOS extender).

Also native OS/2 programs, including Presentation Manager applications can be created.

History

E. Mattes created a POSIX-compatible 32-bit DOS extender for the emTeX distribution.

Development Tools

emxbind.exe
bind .o object files to a DOS executable
emxexp.exe
export definitions
emxfpemu
387 FPU emulator
emximp.exe
creates import libraries
emxomf.exe
converts .o object files (a.out) to .obj object files (OMF) allowing the creation of OS/2 executables that do not need the emx runtime
emxomfar.exe
librarian for OMF .lib files
emxomfld.exe
frontend to LINK386
emxrev.exe
revision number

The GNU development system includes:

  • gas - GNU Assembler
  • gasp - GNU Assembler Preprocessor
  • gdb - GNU Debugger
  • gcc - GNU C compiler
  • gprof - BSD/GNU profiler
  • ld - GNU linker
  • GNU binary utilities: ar, nm, size, strip, objdump
  • GNU documentation system: texinfo

It offers a host of headers and libraries and/or ports of the same intended to replicate common UNIX libraries including all common ANSI C header files and a complete C library, a simple graphics library for 320x200 (256 colours) mode, a library for screen output in windows, partial port of the BSD C library, the BSD data base library(dbopen), the BSD curses library, regexp library, and both the GNU and BSD termcap libraries.

Versions

  • 0.8b (1992-02-23)
  • 0.8c (1992-03-19)
  • 0.8d (1992-05-03) - A mirror (zoo required)
  • 0.8e (1992-09-13)
  • 0.8f (1993-01-03)
  • 0.8g (1993-07-13)
  • 0.8h (1993-12-14)
    • fix10 (Jul 1994)
  • 0.9a (1994-12-05)
    • fix06 (1995)
  • 0.9b (1995-12-10)
  • 0.9c (1996-09-09)
  • 0.9d (1998-12-23)
    • fix04 (Mar 2001) - combined WPI package: emx0944.exe
    • There is a later unofficial patch by Vincenzo Venuto that allows files larger than 2GB
Prerequisites
  • If you want to create executables you need LINK386, a selective install option in OS/2 2.0 or higher.

Links