由于测试基本都是Tcl写成的, 所以工作中不可避免的需要Tcl, 不可避免的经常需要编译Tcl.
对于Win32而言, 可以从直接下载Win32的msi文件, 进行安装.
当然也可以从下载源代码进行编译, tcl.tk的源代码中提供了Win32的编译配置, 但是没有包含x64的编译配置, 所以在win64上, 编译Tcl就有点小小的困难.
本文以Win64上编译Tcl8.4.17为例.
下载和解压的具体过程不必说了, 直接说说编译.
切换到windows的编译目录, win下
cd win
而后, 查看makefile.vc,这个是windows下的makefile,用nmake来运行.
比如我的是amd64为的机器, 我要编译出包含符号表的多线程版本,命令就是:
nmake -f makefile.vc MACHINE=AMD64 OPTS=threads,symbos
要安装就是:
nmake -f makefile.vc install MACHINE=AMD64 INSTALLDIR=C:\Tcl_64
如果是IA64,则将AMD64改为IA64即可.
由于一般使用的是x86的visual studio,所以可能会有一些错误:
1 编译过程中有时提示nmake/cl之类的不相容的问题, 这应该是版本问题, 编译时应该使用这些工具的64位版本, 而不是32位版本:
具体来说,运行命令行前, 应当先设置好:
call "C:\Program Files(x86)\Microsoft Visual Studio 8\VC\vcvarsall.bat" amd64
2 bufferoverflowU.lib not found
许多机器上,这个是存在的,有些则不存在, 所以要自己根据需要来修改nmakehlp.c和Makefile.vc. 一般去掉比较好. 如果不去掉, 自己在编译的路径上, 把该库文件位置加入到编译的库路径中, 主要是对环境变量LIBPATH的修改
3 还有一些是stati64 not found的问题,
这类问题可能需要修改generic/tclh.
以上,只是我碰到的问题. 当然,有可能也没有任何问题,因为机器环境,编译器版本等等不同.
具体碰到的问题, 欢迎交流.
阅读(6921) | 评论(1) | 转发(0) |