Novell is now a part of Micro Focus

EPC C/C++ Enterprise Edition for Novell NetWare

Articles and Tips: article

01 May 1999

EPC is the supplier of a family of high-quality, high-performance compilers, tools and associated libraries for NetWare, a wide range of UNIX platforms, and Windows NT. This article gives a brief overview of this software development environment which includes a cross-compiler running on Intel based Windows 95/98/NT workstations, producing NLM executables.


EPC (Edinburgh Portable Compilers) is the supplier of a family of high-quality, high-performance compilers, tools and associated libraries for NetWare, a wide range of UNIX platforms, and Windows NT. EPC C/C++ Enterprise Edition for Novell NetWare is a software development environment including a cross-compiler running on Intel based Windows 95/98/NT workstations, producing NLM executables. It ships with the following elements:

  • A fully functional ANSI C Compiler (including a K&R option)

  • A standard conformant C++ Compiler

  • C++ Class Libraries

  • A GUI based source and machine level cross-debugger (edb)

  • An Integrated Development Environment (IDE)

  • All necessary NLM utilities, tools and libraries.

  • Online Documentation including a Getting Started Guide.


The IDE is a development environment for C and C++ supporting the following activities:

  • Code Comprehension and Browsing Powerful filtering and visualization techniques work even with very large projects (thousands of files, tens of thousands of symbols, and millions of lines of code). The symbolic information can be extracted by the browser without the need for a full compilation to have been completed.

  • Development Source code changes immediately available in the browser (without necessarily recompiling).

  • Documentation Building An integrated Documentation Editor supports incremental and iterative documentation building. Hypertext-like linking between source code and documentation provides rapid navigation. Generated documentation can be easily converted to other documentation formats.

  • Version and Configuration Management All files of any type can be managed by the facilities provided within the IDE. For those who have already adopted other Corporate CM standards, hooks are provided to facilitate seamless connection to external CM systems such as Continuus, RCS and ClearCase.

  • Build Support The Make Support allows the user to set up and activate the build process via the IDE's GUI.

  • Debugging Support Integration of the edb debugger with the IDE.

  • Integration with other tools The IDE provides some adaptors for other external tools, as well as a flexible interface for interfacing any customer specific tools.

  • Project and Code Management for Teams This optional feature allows for the organization of large projects and effective cooperation in teams.

The Compiler

The Compiler offers both command line and GUI driven interfaces. The command line interface is particularly important when using the compiler for porting large applications, or where test harnesses already exist. The EPC compiler has been used in porting major applications such as Oracle, Informix, Orbix, ObjectStore and Forte to several of the different platforms supported by EPC.

EPC C/C++ compiler version 5.0 is a standard conforming C++ compiler, which includes a fully functional ANSI C compiler. Features include:

  • Advanced C++ optimization

  • Proven C Optimizations

  • Options for backward compatibility with Cfront

  • ANSI C conformant, with dialect options

The ANSI C compiler passes 100% of the tests used by the National Institute of Standards (NIST) to determine standard compliance. The C++ compiler has been successfully tested by major commercial test suites from Modena, Plum Hall and Perennial.

The Libraries

The Rogue Wave class Tools.h++ together with a Standard C++ Library are an integral part of the EPC C/C++ implementation. The Standard Library includes specific optimizations to improve performance, while still retaining the full standard functionality.

The Debugger

The debugger is a symbolic and machine level debugger used for diagnosing applications running remotely on a NetWare server from a Windows 95/NT client. The debugger features:

  • A Windows Interface which provides an attractive, user-friendly interface offering flexible window manager facilities for selective display of memory, watch, breakpoint and register windows. A breakpoint event will automatically locate the debugger to the appropriate window.

  • Source level debugging permitting the user to set and display breakpoints directly in source code, browse through program modules and examine the function call chain.

  • Watch Expressions which permit the selection of specific program variables for display, then watch the values of these variables change as the program is stepped through.

  • Breakpoints which can be defined on a source code line or an assembly instruction.

  • Stepping the program can be executed in single assembly language steps, source language steps, or return steps.

  • Register Access permitting the examination and modification of processor registers.

  • Memory Access permitting the examination and modification of memory locations using various type formats including assembler mnemonics.

  • Symbolic Support for C and C++.

  • Debugging of multi-threaded applications


The EPC C/C++ Enterprise Edition Documentation Set consists of a "Getting Started" guide in both printed and electronic (PDF) format. The purpose of the documentation is to provide sufficient information for the product to be effectively deployed by software developers. It is not intended as a tutorial in how to program in C or C++. In addition, HTML documentation on the CDROM includes:

  • SNiFF+ User's Guide

  • SNiFF+ Reference Guide

  • C/C++ Enterprise User's Guide

  • C Libraries

  • Help files for the Enterprise EDB in .hlp format

  • Rogue Wave Tools.h++ User's Guide

  • Rogue Wave Tools.h++ Class Reference

  • Standard C++ Library Class Reference

Price & Delivery

EPC is offering special introductory pricing for the EPC C/C++ Enterprise Edition. The product is supplied in accordance with the license terms and is protected by license management software. The product is supplied with a 30 day money back guarantee.

Product will be despatched within 2 working days of receipt of order via express air courier service. A flat shipping charge will be added to every order.

Support & Update Service

In common with all other EPC Products, an annual pre-paid subscription service is available providing a support and update service for the professional software developer. Problems together with a test case can be submitted via E-mail to or by filling in our online support form and will be responded to with either a patch or work-around solution. Maintenance and update versions of the software are released during the period of the subscription (12 months) are provided via FTP at no further charge.

Pricing for this service is detailed in the previous section. Orders for subscription to this service will only be accepted at time of original purchase or within the first 30 days. Thereafter, customers who have not subscribed to this service and wish to upgrade at some time in the future to a then current version of the software, will be entitled to an upgrade discount of 40% from the then current product list price.


Orders can be placed by fax, telephone, or E-mail with the following information:

  • Name

  • Organization

  • Telephone Number

  • Credit Card Number and Expiration Date

License Management

EPC protects its licensed software product(s) by using license management software. On initial delivery, the software will be provided with date-limited license keys. You will be required to provide details of the system upon which the software is installed (provided automatically to you) so that permanent license codes can be supplied. Full details are included with the delivered product.

30 Day Money Back

EPC offers a "no questions asked" 30 day money back guarantee from the date of purchase. All we ask is that you provide a certificate on your company/organization letterhead certifying that you have deleted the product from the system, destroyed all copies, and destroyed or caused to have destroyed any and all NLM executable modules which were generated while you were running the software.

For further information, please contact

* Originally published in Novell AppNotes


The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.

© Copyright Micro Focus or one of its affiliates