Compilation on Unix

UpCompilation
Sitemap
 

There are several different flavors of Un*x out there in this small world. A configure script, as generated by GNU autoconf, is provided to handle them all together.

  • Simply type:

    • configure
    • make

    The makefile will then check number and names of the files in the package, generate dependency information, compile them and at last build the library.

  • In contrast to earlier versions the system will build a shared library by default. Give option --disable-shared to configure if this is not desired.
  • To check the extension, type make test or make check. This will build a tclsh containing just tcl, trf and trfcrypt, and then runs some test-scripts checking the behaviour of the created library.
  • At last type make install to install the generated library and the exported header. This installation conforms to the rules set by the package loader mechanism of the tcl-core.
  • With --enable-binio you are able to activate compilation and linkage of command binio.

You do have a non-standard setup (tcl not installed below /usr/local) ?

Don't fret, there are some tuning options for configure to help you.

  • The configure script searches the core header tcl.h in the following places:

    1. $(TCL_INCLUDE_DIR)
    2. ../../tcl8.1/generic
    3. ../../tcl8.0/generic
    4. ../../tcl7.6/generic
    5. ../../tcl/generic
    6. ../../tcl
    7. $(prefix)
    8. /usr/local/include
    9. /usr/include

    By default $(TCL_INCLUDE_DIR) is empty and $(prefix) points to the location of an installed 'tclsh' or is /usr/local if tclsh could not be found via $PATH.

    There are three options to override these defaults:

    --prefix=DIR

    $(prefix)=DIR

    --with-tcl=DIR

    $(TCL_INCLUDE_DIR)=DIR/include

    --with-tcl-include-dir=DIR

    $(TCL_INCLUDE_DIR)=DIR

  • To find libtcl.a (or libtcl.so.??) the paths

    1. $(TCL_LIB_DIR)
    2. ../../tcl8.1/unix
    3. ../../tcl8.0/unix
    4. ../../tcl7.6/unix
    5. ../../tcl/unix
    6. ../../tcl
    7. $(exec_prefix)
    8. /usr/local/include
    9. /usr/include

    are searched. $(TCL_LIB_DIR) is empty by default, but can be set via

    --with-tcl=DIR

    $(TCL_LIB_DIR)=DIR/lib

    --with-tcl-lib-dir=DIR

    $(TCL_LIB_DIR)=DIR

    $(exec_prefix) contains the same value as $(prefix) by default, but can be set explicitly via --exec-prefix.

  • The configure script searches the header transform.h of the trf base package in the following places:

    1. $(TRF_INCLUDE_DIR)
    2. ../../trf1.2/generic
    3. ../../trf1.1/generic
    4. ../../trf1.0/generic
    5. ../../trf/generic
    6. ../../trf
    7. $(prefix)
    8. /usr/local/include
    9. /usr/include

    By default $(TRF_INCLUDE_DIR) is empty and $(prefix) points to the location of an installed 'tclsh' or is /usr/local if tclsh could not be found via $PATH.

    There are three options to override these defaults:

    --prefix=DIR

    $(prefix)=DIR

    --with-trf=DIR

    $(TRF_INCLUDE_DIR)=DIR/include

    --with-trf-include-dir=DIR

    $(TRF_INCLUDE_DIR)=DIR

  • To find libtrf.a (or libtrf.so.??) the paths

    1. $(TRF_LIB_DIR)
    2. ../../trf1.2/unix
    3. ../../trf1.1/unix
    4. ../../trf1.0/unix
    5. ../../trf/unix
    6. ../../trf
    7. $(exec_prefix)
    8. /usr/local/include
    9. /usr/include

    are searched. $(TRF_LIB_DIR) is empty by default, but can be set via

    --with-trf=DIR

    $(TRF_LIB_DIR)=DIR/lib

    --with-trf-lib-dir=DIR

    $(TRF_LIB_DIR)=DIR

    $(exec_prefix) contains the same value as $(prefix) by default, but can be set explicitly via --exec-prefix.

  • It is additionally possible to restrict trfcrypt to an individual subset of the available algorithms by using the options


    --enable-blowfish use 'blowfish' command
    --enable-des use 'des' command
    --enable-idea use 'idea' command
    --enable-safer use 'safer' command
    --enable-rc2 use 'rc2' command
    --enable-rc4 use 'rc4' command
    --enable-rot use 'rot' command

    --disable-blowfish no 'blowfish' command
    --disable-des no 'des' command
    --disable-idea no 'idea' command
    --disable-safer no 'safer' command
    --disable-rc2 no 'rc2' command
    --disable-rc4 no 'rc4' command
    --disable-rot no 'rot' command

    By default all algorithms are activated.


© Andreas Kupries
Last update at Sat Mar 31 22:40:25 CEST 2001