mirror of
https://github.com/python/cpython.git
synced 2024-12-20 07:15:08 +08:00
37 lines
1.4 KiB
Plaintext
37 lines
1.4 KiB
Plaintext
|
Comments on building tcl/tk for AMD64 with the MS SDK compiler
|
||
|
==============================================================
|
||
|
|
||
|
I did have to build tcl/tk manually.
|
||
|
|
||
|
First, I had to build the nmakehlp.exe helper utility manually by executing
|
||
|
cl nmakehlp.c /link bufferoverflowU.lib
|
||
|
in both the tcl8.4.12\win and tk8.4.12\win directories.
|
||
|
|
||
|
Second, the AMD64 compiler refuses to compile the file
|
||
|
tcl8.4.12\generic\tclExecute.c because it insists on using intrinsics
|
||
|
for the 'ceil' and 'floor' functions:
|
||
|
|
||
|
..\generic\tclExecute.c(394) : error C2099: initializer is not a constant
|
||
|
..\generic\tclExecute.c(398) : error C2099: initializer is not a constant
|
||
|
|
||
|
I did comment out these lines; an alternative would have been to use
|
||
|
the /Oi- compiler flag to disable the intrinsic functions.
|
||
|
The commands then used were these:
|
||
|
|
||
|
svn export http://svn.python.org/projects/external/tcl8.4.12
|
||
|
cd tcl8.4.12\win
|
||
|
REM
|
||
|
echo patch the tcl8.4.12\generic\tclExecute.c file
|
||
|
pause
|
||
|
REM
|
||
|
cl nmakehlp.c /link bufferoverflowU.lib
|
||
|
nmake -f makefile.vc MACHINE=AMD64
|
||
|
nmake -f makefile.vc INSTALLDIR=..\..\tcltk install
|
||
|
cd ..\..
|
||
|
svn export http://svn.python.org/projects/external/tk8.4.12
|
||
|
cd tk8.4.12\win
|
||
|
cl nmakehlp.c /link bufferoverflowU.lib
|
||
|
nmake -f makefile.vc TCLDIR=..\..\tcl8.4.12 MACHINE=AMD64
|
||
|
nmake -f makefile.vc TCLDIR=..\..\tcl8.4.12 INSTALLDIR=..\..\tcltk install
|
||
|
cd ..\..
|