path-installation - Path - The Installer's Guide
Welcome to the Path project, written by Andreas Kupries.
For availability please read Path - How To Get The Sources.
The audience of this document are anyone wishing to build the Path project, for either themselves, or others.
If you are a developer intending to extend or modify the project please see the list of Related Documents for references to more information on this topic.
Please read Path - How To Get The Sources first, if that was not done already. Here we assume that the sources are already available in a directory of your choice.
This project requires a working installation of Tcl 8.5, or higher.
Use whatever you are comfortable with, as long as it provides Tcl 8.5, or higher.
An easy way to get a proper installation of a recent Tcl 8.5, (which I recommend) is to download and install ActiveState's ActiveTcl 8.5 for your platform. Just follow the link and instruction on that site.
After the installation of ActiveTcl 8.5 simply run the command
teacup update
This will install a lot more packages than found in the distribution alone. (Disclosure: I, Andreas Kupries, did work for ActiveState, maintaining ActiveTcl and TclDevKit).
Do you wish to build Tcl on your own ? The sources of all versions can be found at
together with the necessary instructions on how to build it.
If there are problems with building, installing, or using Tcl and its packages please file a bug against Tcl, or the vendor of your distribution, and not path.
The framework uses the TclOO package in its implementation. This package requires Tcl 8.5 or higher.
In Tcl 8.6 the package is part of the core itself, without requiring a separate installation.
For Tcl 8.5 it has to be installed separately.
Out of the many possibilites for getting TclOO (OS vendor, os-independent vendor, building from sources) use whatever you are comfortable with.
For myself, I am most comfortable with using ActiveState's ActiveTcl distribution and TEApot.
See the previous section (Tcl) for disclosure and information on how to get it.
Assuming that ActiveTcl got installed running the command
teacup install TclOO
will install the package for your platform, if you have not done the more inclusive
teacup update
to get everything and the kitchensink.
For those wishing to build and install TclOO on their own, the relevant sources can be found at https://core.tcl.tk/tcloo together with the necessary instructions on how to build it.
If there are problems with building, installing, or using TclOO and its packages please file a bug against TclOO, or the vendor of your distribution, and not path.
This project uses the Atom project and packages as its foundation for storing individual strings.
Please go to either the main repository at http://core.tcl.tk/akupries/atom or the backup at http://chiselapp.com/andreas_kupries/repositories/atom and follow the instructions given at these sites to create a working installation. They are not repeated here. If there are problems with these instructions please file a bug against the Atom project, and not Path.
Dbutil is required by the atom::sqlite package.
The package can be found at https://core.tcl.tk/akupries/dbutil and https://chiselapp.com/user/andreas_kupries/repository/dbutil
You will have to build and install it on your own, because as far as I know it is not included in any type of distribution yet. The necessary instructions for that are found at the sites referenced above.
If there are problems with building, installing, or using DbUtil please file a bug against DbUtil itself, and not path.
Sqlite is required by the atom::sqlite package.
Out of the many possibilites for getting sqlite and its Tcl bindings (OS vendor, os-independent vendor, building from sources) use whatever you are comfortable with.
For myself, I am most comfortable with using ActiveState's ActiveTcl distribution and TEApot.
See the previous section (Tcl) for disclosure and information on how to get it.
Assuming that ActiveTcl got installed running the command
teacup install sqlite3
will install the package for your platform, if you have not done the more inclusive
teacup update
to get everything and the kitchensink.
For those wishing to build and install sqlite and its Tcl bindings on their own, the relevant sources can be found at https://sqlite.org together with the necessary instructions on how to build it.
If there are problems with building, installing, or using Sqlite please file a bug against Sqlite, or the vendor of your distribution, and not path.
This project uses the Kettle application and package as its build system.
Please go to either the main repository at http://core.tcl.tk/akupries/kettle or the backup at http://chiselapp.com/andreas_kupries/repositories/Kettle and follow the instructions given at these sites to create a working installation. They are not repeated here. If there are problems with these instructions please file a bug against the Kettle project, and not Path.
Path uses the Kettle application and package to handle building and installation. It is assumed to be installed and working. Please see section Kettle in Requisites for more information.
Note that all access to Kettle is mediated by the "build.tcl" script, found in the top-level directory of the project.
For the most basic installation of Path run
% /path/to/path/build.tcl install
This command uses the kettle application found in the , and the associated tclsh.
The command builds all packages and applications of Path, and then installs them so that the associated tclsh has access to them. Any applications will become siblings of tclsh.
For more control about which version of kettle and/or tclsh gets used run either
% /path/to/kettle /path/to/path/build.tcl install
or even
% /path/to/tclsh /path/to/kettle /path/to/path/build.tcl install
to specify the exact files to use.
On Windows it is possible to invoke the the file "build.tcl" with a double-click. This will start a graphical interface to the system, with buttons for all the possible actions, which includes 'install'ation.
On unix the same GUI is acessible by invoking "build.tcl" with the arguments gui, i.e. as
% /path/to/path/build.tcl gui
To get help about the methods of "build.tcl", and their complete syntax, simply invoke "build.tcl" like
% /path/to/path/build.tcl gui
Path - The Installer's Guide
Both the package(s) and this documentation will undoubtedly contain bugs and other problems. Please report such at Path Tickets.
Please also report any ideas you may have for enhancements of either package(s) and/or documentation.
deduplication, hierarchical, interning, list(string) deduplication, list(string) interning, list(string) storage, path deduplication, path interning, path storage, storage, tree
Copyright © 2017 Andreas Kupries
Copyright © 2017 Documentation, Andreas Kupries