* io.c (rb_open_file): encoding in mode string was ignored if perm is
[ruby-svn.git] / ext / tk / README.tcltklib
blob8c6dd5178fb45fe68fb204558b8f344867f83697
1 To compile 'tcltklib', you must have Tcl/Tk libraries on your environment. 
2 Although 'extconf.rb' script searches Tcl/Tk libraries and header files, 
3 sometimes fails to find them. And then, 'tcltklib' cannot be compiled. If 
4 Tcl/Tk libraries or header files are installed but are not found, you can 
5 give the information by arguments of the 'configure' script. Please give 
6 some or all of the following options. 
8  --with-tcltkversion=<version> 
9       force version of Tcl/Tk libaray
10       (e.g. libtcl8.4g.so ==> --with-tcltkversion=8.4g)
12  --with-tcllib=<libname>       (e.g. libtcl8.4.so ==> --with-tcllib=tcl8.4)
13  --with-tklib=<libname>        (e.g. libtk8.4.so  ==> --with-tklib=tk8.4)
15  --enable-tcltk-stubs          (if you force to enable stubs)
17  --with-tcl-dir=<path> 
18       equal to "--with-tcl-include=<path>/include --with-tcl-lib=<path>/lib"
20  --with-tk-dir=<path> 
21       equal to "--with-tk-include=<path>/include --with-tk-lib=<path>/lib"
23  --with-tcl-include=<dir>      the directry contains 'tcl.h'
24  --with-tk-include=<dir>       the directry contains 'tk.h'
26  --with-tcl-lib=<dir>          the directry contains 'libtcl<version>.so'
27  --with-tk-lib=<dir>           the directry contains 'libtk<version>.so'
29  --enable-mac-tcltk-framework  (MacOS X) use Tcl/Tk framework
30                                (Obsolete. Please use '--enable-tcltk-framework'.)
32  --enable-tcltk-framework      use Tcl/Tk framework
34  --with-tcltk-framework=<dir>  the directory contains Tcl/Tk framework; 
35                                "<dir>/Tcl.framework" and "<dir>/Tk.framework".
36                                When this option is given, it is assumed that 
37                                --enable-tcltk-framework option is given also.
39  --with-tcl-framework-header=<dir>
40       Tcl framework headers directory 
41       (e.g. "/Library/Frameworks/Tcl.framework/Headers")
43  --with-tk-framework-header=<dir>
44       Tk framework headers directory 
45       (e.g. "/Library/Frameworks/Tk.framework/Headers")
48  --with-X11 / --without-X11    use / not use the X Window System
50  --with-X11-dir=<path> 
51       equal to "--with-X11-include=<path>/include --with-X11-lib=<path>/lib"
53  --with-X11-include=<dir>      the directry contais X11 header files
54  --with-X11-lib=<dir>          the directry contais X11 libraries
57 If you forgot to give the options when do 'configure' on toplevel
58 directry of Ruby sources, please try something like as the followings.
60  $ cd ext/tcltklib
61  $ rm Makefile
62  $ CONFIGURE_ARGS='--with-tcl-include=/usr/local/include/tcl8.4/ --with-tcllib=tcl8.4 --with-tklib=tk8.4' ruby extconf.rb
65  *** ATTENTION ***
66 When your Tcl/Tk libraries are compiled with "pthread support", 
67 Ruby/Tk may cause "Hang-up" or "Segmentation Fault" frequently. 
68 If you have such a trouble, please try to use the '--enable-pthread' 
69 option of the 'configure' command and re-compile Ruby sources. 
70 It may help you to avoid this trouble. The following configure 
71 options may be useful.
73   --enable-tcl-thread/--disable-tcl-thread
74   --with-tclConfig-file=<path of 'tclConfig.sh'>
76 It is not need that 'tclConfig.sh' is a normal Tcl/Tk's tclConfig.sh. 
77 But the file is expected to include the line "TCL_THREADS=0" or "...=1".
78 When no "TCL_THREADS=?" line, if Tcl version is 7.x or 8.0 which is 
79 given by "TCL_MAJOR_VERSION=?" line and "TCL_MINOR_VERSION=?" line, 
80 then --disable-tcl-thread is expected. Else, ignore the 'tclConfig.sh'.
81 If --enable-tcl-thread or --disable-tcl-thread option is given, then 
82 --with-tclConfig-file option is ignored. 
84 ==========================================================
85                 Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)