TOC PREV NEXT INDEX

 


Deciding Whether Static or Dynamic Linking is More Appropriate


In general, Ajuba Solutions recommends that you create statically-linked wrapped applications. A statically-linked application is usually simpler to distribute and maintain. It contains your scripts and data files, a Tcl interpreter, and everything else needed to run the application. On the other hand, if you distribute a dynamically-linked application, you must be sure that the target system has the Tcl (and Tk, if needed) libraries and library script files (such as init.tcl) properly installed and configured. If your application uses Tcl extensions (such as [incr Tcl]), then those extensions must also be installed and configured on your target system. Furthermore, if a user accidentally deletes a shared library, or another software package installs an incompatible version of one, your dynamically-linked application will no longer work on that system.


Note: Because of system limitations, statically-linked wrapped applications can't load shared libraries. Therefore, if you need to load shared libraries (or auto-load packages that contain binary shared libraries), you must either create a dynamically-linked wrapped application or create a custom Tcl interpreter that links a static version of the library.

You also might consider distributing dynamically-linked wrapped applications. However, for a dynamically-linked wrapped application to work, your target systems must have all needed libraries installed and configured properly. Dynamically-linked applications are smaller than statically-linked ones, which can be beneficial if you plan to distribute several wrapped applications.




http://www.ajubasolutions.com
Voice: (650) 210-0100
Fax: (650) 210-0101
support@ajubasolutions.com
TOC PREV NEXT INDEX