Skip to content

Latest commit

 

History

History
76 lines (46 loc) · 3.31 KB

File metadata and controls

76 lines (46 loc) · 3.31 KB

Tools - Table Of Contents

This document serves as a table of contents, for the documentation on the Orange toolchain.

General Tools

General tools compile or assemble code, and manage the resulting object files.

  • OCC is an optimizing x86 C compiler.
  • OAsm is an x86 assembler. It uses a syntax that is very similar to the Netwide Assembler (NASM)
  • OLib documentation is an object file librarian.
  • OLink documentation - object file linker.

Linker Postprocessing Tools

Linker postprocessing tools take the linker output, and make some sort of device or OS-specific binary image that serves as the final executable image.

  • DLHex is the utility to make hex and binary files, for ROM-based images
  • DLMZ is the utility to make 16-bit MSDOS executables.
  • DLLE is the utility to make 32-bit MSDOS executables that aren't windows compatible.
  • DLPE is the utility to make Windows 32-bit executables.

Utilities

Utilities are external utilites that aren't generally needed for developing programs, but are somewhat useful.

  • OCPP is a C and assembly language preprocessor. It understands C89, C99, and OAsm preprocessor directive syntaxes.
  • OGrep looks for regular expressions within source code files.
  • OMake is a make utility similar to GNU make.
  • onm dumps the symbols from object files
  • ieeeconvert convert object files between binary and ascii formats

Compiler wrappers

Compiler wrappers are wrappers that convert the command line for other compilers to a format that OCC can use. Currently we support the basic tools from GCC and MSVC as wrappers.

GCC

  • gccocc wrapper for the gcc command line
  • arocc wrapper for the ar command line

MSVC

  • clocc wrapper for the cl.exe command line
  • libocc wrapper for the lib.exe command line
  • linkocc wrapper for the link.exe command line

WIN32 Specific tools

WIN32 specific tools are tools that aid in the development of WIN32 programs.

  • OImpLib is a WIN32 import librarian.
  • ORC is a WIN32 resource compiler.
  • Coff2IEEE converts import libraries from the COFF format to the Orange C format.
  • OBRC Orange C Browse Compiler
  • OCCPR Orange C Code Completion compiler

Debugging without a debugger

Tools Setup

The tools come with configuration files that set up their run-time enviroment. These are automatically read relative to the binaries, therefore only the OrangeC bin directory must be on PATH.

For example, if the tools are installed in c:\orangec, the following command line command is enough to set up the OrangeC environment:

PATH=c:\\orangec\\bin;%PATH%

There is also an ORANGEC environment variable. Usually it doesn't need to be set, but if you have multiple installations of orange c on the path you may want to set it to avoid ambiguity. It is set to the OrangeC root directory:

set ORANGEC=c:\\orangec