'''http://core.tcl.tk/sampleextension/%|%Sampleextension%|%''' is the "official" example of a Tcl [Extending Tcl%|%extension]. Write some [C] functions, and then follow the quick start guide below to add the required autogoo to get it to compile as an extension. Note that the first link above is to the Fossil repository. Besides the files in that repository (they only make up the sample extension), you also need the tclconfig files in http://core.tcl.tk/tclconfig. The configure script expect the tclconfig files in either the current directory or a "tclconfig" subdirectory. ** See Also ** [tclconfig]: used by sampleextension [Extending Tcl]: The main page for similar information [TEA]: https://bitbucket.org/smh377/ariesengine/src/b036aecb0a8f0b08fa1171efbe65e7055ad4fcc3/bindings/tcl/%|%an alternative using CMake%|%: Part of The Aries Engine (formerly [the brick engine]) repository ** Attributes ** nightly snapshots ('''not''' up to date): ftp://ftp.tcl.tk/pub/tcl/nightly-cvs ** Description ** The Tcl sample extension implements an extension calculating the Core Secure Hash Algorithm (sha1). It demonstrates a [TEA]-conformant [Tcl] [extension] that includes a [C] library that can be dynamically [load]ed. It also illustrates the TEA directory structure and use of Tcl autoconf extensions to provide '''[configure]''' and '''[make]''' facilities. *** Quick start guide *** ====== # Replace quux with the name of your extension EXTNAME=quux wget -qO- http://core.tcl.tk/sampleextension/tarball/${EXTNAME}.tar.gz | tar xzv cd ${EXTNAME} wget -qO- http://core.tcl.tk/tclconfig/tarball/tclconfig.tar.gz | tar xzv # Write your source files # Edit configure.ac autoconf # And then the usual: ./configure make ====== The `wget` commands in the above fetch from the respective Fossil repositories, so they should be the latest stable version. The tests/all.tcl file included in sampleextension is quite old and seems buggy (It always reports "Sourced 0 Test Files" for me). So you may want to replace this file with the version from a recent Tcl source distribution. <> Package | Porting | Foreign Interfaces | Cryptography