Jump to content

Emx: Difference between revisions

From EDM2
Redirected page to The EMX Project
 
Ak120 (talk | contribs)
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
#REDIRECT [[The EMX Project]]
{{DISPLAYTITLE:emx}}
'''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 [https://stuff.mit.edu/afs/sipb/project/os2/ftp/emx/ 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==
*https://sourceforge.net/projects/emx/
 
[[Category:emx]][[Category:Software written in C]]

Latest revision as of 14:20, 16 September 2024

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