Man Linux: Main Page and Category List

NAME

       oztool - oz DLL builder

SYNOPSIS

       oztool [c++|cc|ld|platform] ...

       oztool  facilitates  the  creation  of  native functors (see Part VI of
       Application Programming and Interfacing to C and C++). A native
       functor  is a DLL, i. e. a library that is dynamically loaded by the Oz
       emulator and interfaces  with  it.  Creating  a  native  functor  often
       involves  complicated  compilation  and  linking  technicalities (e. g.
       options). oztool takes care of these details for you.

       oztool c++ ...
              Instead of calling the C++ compiler directly, you should  invoke
              it  through  oztool.  The  advantages  are:  it  calls the right
              compiler, with the right options, and also extends  the  include
              search  path  to  find  the  Mozart  specific  includes  such as
              mozart.h.  Normally,  you  would  compile   a   native   functor
              implemented in foo.cc using:
                                    oztool c++ -c foo.cc

       oztool cc ...
              Same idea, but for the C compiler

       oztool ld ...

              Instead  of  calling the linker directly, you should also invoke
              it through oztool. Again, the advantages are that it  calls  the
              right linker, with the right options. Normally, you would create
              a DLL from foo.o as follows:
                                 oztool ld -o foo.so foo.o

       oztool platform
              The default Resolution mechanism locates  architecture  specific
              DLLs  as  follows:  If  the system needs a native functor called
              (abstractly) foo.so, then it will look for a DLL called  foo.so-
              linux-i486 on a Linux machine, foo.so-solaris-sparc on a Solaris
              machine, or foo.so-win32-i486 on a Windows machine, etc... Thus,
              when  you  create a DLL, you should install it with a name where
              the machine’s architecture is appended. Invoking oztool platform
              simply  prints  out  the  appropriate architecture name for your
              machine. In  this  respect,  oztool  helps  you  write  portable
              Makefiles:  to  create a DLL from file foo.cc you would normally
              invoke:

              oztool c++ -c foo.cc
              oztool ld -o foo.so-‘oztool platform‘ foo.o

                                                                     oztool(1)