我正在尝试以普通用户身份在 RedHat 5 上安装 TCL/TK:
TCL_VERSION=8.6.1
BASE_PATH=/myownpath
tar -xzf tcl${TCL_VERSION}-src.tar.gz
cd tcl${TCL_VERSION}/unix
./configure \
--prefix=${BASE_PATH} \
--without-tzdata \
--enable-64bit
make -j9
sed -e "s@^\(TCL_SRC_DIR='\).*@\1${BASE_PATH}'@" \
-e "/TCL_B/s@='\(-L\)\?.*unix@='\1${BASE_PATH}/lib@" \
-i tclConfig.sh
make install
make install-private-headers
chmod -v 755 ${BASE_PATH}/lib/libtcl*.so
到目前为止一切顺利:${BASE_PATH}/include/tcl.h 存在并且 ${BASE_PATH}/lib/tclConfig.sh 看起来不错:
# String to pass to the compiler so that an extension can
# find installed Tcl headers.
TCL_INCLUDE_SPEC='-I/myownpath/include'
然后我尝试安装 TK:
tar -xzf tk${TCL_VERSION}-src.tar.gz
cd tk${TCL_VERSION}/unix
./configure \
--prefix=${BASE_PATH} \
--enable-64bit \
--with-tcl=${BASE_PATH}/lib \
make -j9
sed -e "s@^\(TK_SRC_DIR='\).*@\1${BASE_PATH}'@" \
-e "/TK_B/s@='\(-L\)\?.*unix@='\1${BASE_PATH}/lib@" \
-i tkConfig.sh
make install
make install-private-headers
chmod -v 755 ${BASE_PATH}/lib/libtk*.so
它在 make 时失败并显示以下消息:
tk8.6.1/unix/../generic/tk.h:19:17: error: tcl.h: No such file or directory
我错过了什么?!?
最佳答案
我按照以下步骤在 Linux(Ubuntu) 上安装了 tcl、tk。 请使用 sudo 以避免任何与权限相关的问题 创建您选择的目录,例如/opt/tcltk
安装 tcl
- 创建目录/opt/tcltk
- 从 ( http://www.tcl.tk/software/tcltk/download.html ) 下载 tcl8.6.9-src.tar.gz, tk8.6.9.1-src.tar.gz
- 将这两个 tar 文件移动到 opt/tcltk/中
- cd/opt/tcltk/安装tcl8.6.9
- /opt/tcltk> sudo gunzip -c tcl8.6.9-src.tar.gz | tar -xf -
- cd/opt/tcltk/tcl8.6.9/unix/
- /opt/tcltk/tcl8.6.9/unix> sudo ./configure --prefix=/opt/tcltk
- /opt/tcltk/tcl8.6.9/unix> sudo make
- 可选的,你可以通过执行“sudo make test”来检查make
- /opt/tcltk/tcl8.6.9/unix> sudo make install
- 通过在 cli 上执行“/opt/tcltk/bin/tclsh8.6”来验证安装
安装tk
cd/opt/tcltk/提取 tk tar
/opt/tcltk/>sudo gunzip -c tk8.6.9.1-src.tar.gz | tar -xf -
/opt/tcltk/tk8.6.9/unix>sudo ./configure --prefix=/opt/tcltk
/opt/degrib/tcltk/tk8.6.9/unix>sudo make
sudo 进行安装
安装过程中有什么问题欢迎大家评论
关于linux - 免root安装TCL/TK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19163983/