SourceForge Logo
Building Open CASCADE with Autoconf

 How to build:

  1. To try out the 'autoconfiscated' Open CASCADE, download the sources via CVS by following the instructions on the SourceForge project page.  The module to checkout is named "OCC".  After you have logged in, the cvs command will be somthing like

  2. cvs -z9 checkout OCC
  3. Set the enviornment variables CC to an ANSI C compiler, and CXX to your C++ compiler.  If you are using GNU GCC, you can skip this step.   If you have a Java compiler installed, add the include path for it to the CXXFLAGS enviornment variable.  This isn't required, but is a good idea.  In many instances the same option must be passed to the link as well, do that by setting LDFLAGS.
  4. Currently, the Makefiles that are generated will probably only work with GNU Make.  The reason for this is that the directory structure of Open CASCADE is not typical of GNU software, so we must use VPATH variable so that the Makefile will find all of the files it needs.  You can set the variable MAKE to the full path of GNU make if it is not the first "make" in your path.
  5. Run the configure script.  Create a directory to build in, then type type source-directory/configure --prefix=(the directory you want to install to) --srcdir=source-directory add any other options you need. 

  6. The Tk and Tcl libraries must be specified with --with-tcl=DIR and --with-tk=DIR to the configure command.    The configure script will also take arguments to point include directories for finding X-Windows header and library files, you need to add these only if some of the other X libraries (like Xmu) are not in the compiler's search path.
  7. If configure exits cleanly, you can then build all of Open CASCADE with the command "make"
  8. In some situations it the build may fail.  To fix this, check your C++ compiler man pages for an option that will interpret C++ code as ISO standard compilant.  There may also be problems with C compilers, so check the manual pages for your compiler and set the variable CC to the highest level of ANSI conformance.   Also report all building failures to me via email and I will fix them so that no one else will have the same problem.

Tested Platforms

This list is constantly changing, and probably never is up to date, but rest assured if your platform is listed, it will work.
platform C++ Compiler C Compiler Compiler Flags Tcl/Tk version uname -a
alphaev56-dec-osf4.0f Compaq C++ V6.2-037 for Digital UNIX V4.0F (Rev. 1229) Compiler Driver V6.3-126 (dtk) cc Driver CXX = cxx
CXXFLAGS='-w -g -nocompress'
8.2.3 OSF1 V4.0 1229 alpha
mips-sgi-irix6.5 MIPSpro Compilers: Version MIPSpro Compilers: Version CXX = 'CC'
CXXFLAGS='-w -g -G4'
8.2.3 IRIX64 6.5 04191312 IP30
i686-pc-linux-gnu egcs-2.91.66 egcs-2.91.66 none 8.2.3 Linux 2.2.16-3smp #1 SMP i686 unknown
sparc-sun-solaris2.7 Solaris Forte C++ 6.0 Forte 6.0 nothing special 8.3.3 SunOS 5.7 Generic_106541-04 sun4u sparc SUNW,Ultra-2
hppa2.0w-hp-hpux11.00 aCC: HP ANSI C++ B3910B A.03.25 c89 none 8.2.3 HP-UX B.11.00 A 9000/782 2005520202 two-user license
hppa1.1-hp-hpux10.20 aCC: HP ANSI C++ B3910B A.01.21 c89 none 8.2.3 HP-UX B.10.20 A 9000/777 2007571420 two-user license
sparc64-unknown-linux-gnu gcc version 2.95.2 20000220 (Debian GNU/Linux) gcc 2.95.2 none 8.2.3 Linux usf-cf-sparc-linux-1 2.2.18pre21 #1 Wed Nov 22 17:12:06 EST 2000 sparc64 unknown

IRIX can be very picky, improperly setting --x-libraries can cause your builds to fail by attempting to link old o32 librareis with n32 objects created by SGI's C++ compiler.  The fix if this happens is to specify /usr/lib32 in configure's options, do not specify /usr/lib as this is the directory for o32 objects, /usr/lib32 is where n32 objects reside.

The sed shipped with Solaris and IRIX will truncate its output to 4000 and 8201 characters, respectively.  This will wreak havoc with Libtool when large libraries are compiled.   The simple workaround is the put GNU sed in your path ahead of the bug-ridden vendor sed.

RedHat Linux versions 7.0 and 7.1 ship with an experimental version of GCC that will not compile Open CASCADE.  This is not a problem with this build system, it will not compile with Matra's scripts either.  If you have one of these systems, consider installing gcc version 2.95.3 on your machine.

Sun's Forte C++ compiler has some problems that result in unresolved externals when compiling Open CASCADE.   These have been fixed in the current CVS sources for this project.   These problems consisted of typedefs confusing the compiler in CSLib, and the prototypes of Xw_load_???_image being defined as returning a specific type pointer, while the function definitions were defined as returning void pointers.

This page is in no way officially connected to Matra Datavision.