blob-installation - Blob - The Installer's Guide
Welcome to the Blob project, written by Andreas Kupries.
For availability please read Blob - How To Get The Sources.
The audience of this document are anyone wishing to build the Blob 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 Blob - 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 blob.
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 blob.
Dbutil is required by the blob::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 blob.
Sqlite is required by the blob::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 blob.
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 Blob.
The framework requires six packages found in Tcllib. These are
debug
debug::caller
fileutil
oo::util
sha1
try
Out of the many possibilites for getting Tcllib (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 commands
teacup install debug teacup install debug::caller teacup install fileutil teacup install oo::util teacup install sha1 teacup install try
will install them 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 Tcllib on their own, the relevant sources can be found at http://core.tcl.tk/tcllib together with the necessary instructions on how to build it.
If there are problems with building, installing, or using Tcllib and its packages please file a bug against Tcllib, or the vendor of your distribution, and not blob.
Blob 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 Blob run
% /path/to/blob/build.tcl install
This command uses the kettle application found in the , and the associated tclsh.
The command builds all packages and applications of Blob, 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/blob/build.tcl install
or even
% /path/to/tclsh /path/to/kettle /path/to/blob/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/blob/build.tcl gui
To get help about the methods of "build.tcl", and their complete syntax, simply invoke "build.tcl" like
% /path/to/blob/build.tcl gui
Blob - The Installer's Guide
Both the package(s) and this documentation will undoubtedly contain bugs and other problems. Please report such at Blob Tickets.
Please also report any ideas you may have for enhancements of either package(s) and/or documentation.
Copyright © 2013-2016 Andreas Kupries
Copyright © 2013-2016 Documentation, Andreas Kupries