Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

compiling Tcl 8.4 for 64bit on Windows XP64

206 views
Skip to first unread message

falk.vo...@web.de

unread,
Sep 1, 2006, 5:42:06 AM9/1/06
to
I use the "Visual Studio 6.0 with SP5" and the "Microsoft Platform SDK
for Windows Server 2003 R2"

I open a cmd and call vcvars32.bat first, then I call SetEnv.Cmd with
different options, because the option /pre64 doesn't exists in the SDK
(see makefile.vc)

Have someone the the correct parameters for the compilation? or the
link for the right SDK?

Best regards

Falk

Pat Thoyts

unread,
Sep 4, 2006, 7:56:30 AM9/4/06
to
falk.vo...@web.de writes:

You may as well stick with 32bit tcl on Windows. However, the method
to build this depends what processor. If you are using an AMD64 chip
then you need an updated version of the PlatformSDK. There are some
options to include that are listed at the top of the win/makefile.vc
file or I think they are auto-detected if you are using the autoconf
stuff. The main thing is getting an AMD64 capable build environment so
you can issue
nmake -f makfile.vc MACHINE=AMD64
and have it work.

--
Pat Thoyts http://www.patthoyts.tk/
To reply, rot13 the return address or read the X-Address header.
PGP fingerprint 2C 6E 98 07 2C 59 C8 97 10 CE 11 E6 04 E0 B9 DD

Rick Gutleber

unread,
Sep 8, 2006, 11:03:18 AM9/8/06
to
Does the Platform SDK update the compiler to support newer processors?
VS6 sp 5 is about 6 years old and predates 64-bit processors. There was
the "processor pack" which brought it up to date with the status quo
from whenever it came out, but I wasn't aware that the PSDK updated the
actual compiler.

I guess this is really a MS question, but since you're trying to do a
64-bit build, it's certainly relevant.

falk.vo...@web.de

unread,
Sep 15, 2006, 3:23:28 AM9/15/06
to

Rick Gutleber schrieb:


> > you can issue
> > nmake -f makfile.vc MACHINE=AMD64
> > and have it work.

the SDK have shell script SetEnv.Cmd have not the option AMD64. If I
try compile tcl vcvars32.bat settings the compiling have no error or
warning, but the linker don't know this option and find the correct
librarys. If I call the SetEnv.Cmd with the 64bit environment, the
compiling doesn't work. I have try the old SDK and the new one. Have
someone a hint where the problem is?

Pat Thoyts

unread,
Sep 18, 2006, 7:24:15 AM9/18/06
to
falk.vo...@web.de writes:

Have a close check. In my SetEnv.cmd file I see near the top:
Set CPU=i386
IF "%~1" == "/SRV64" Set CPU=IA64
IF "%~1" == "/XP64" Set CPU=AMD64
IF "%~1" == "/X64" Set CPU=AMD64

If you do not have these lines you likely have an older version of the
platform sdk without support for this processor.

falk.vo...@web.de

unread,
Sep 20, 2006, 5:40:25 AM9/20/06
to
Pat Thoyts schrieb:

> Have a close check. In my SetEnv.cmd file I see near the top:
> Set CPU=i386
> IF "%~1" == "/SRV64" Set CPU=IA64
> IF "%~1" == "/XP64" Set CPU=AMD64
> IF "%~1" == "/X64" Set CPU=AMD64
>

my SDK have this lines.

I open a shell and execute this lines:
vcvars32.bat
"C:\Program Files\Microsoft Platform SDK\SetEnv.Cmd" /XP64
nmake -f makefile.vc MACHINE=AMD64

and the out from the compiler is:

Microsoft (R) Program Maintenance Utility Version 7.00.8882
Copyright (C) Microsoft Corp 1988-2000. All rights reserved.

===============================================================================
cl : Command line warning D9002 : ignoring unknown option '-ML'
'nmakehlp' is not recognized as an internal or external command,
operable program or batch file.
*** Compiler has 'Optimizations'
'nmakehlp' is not recognized as an internal or external command,
operable program or batch file.
'nmakehlp' is not recognized as an internal or external command,
operable program or batch file.
*** Intermediate directory will be '.\Release\tcl_Dynamic'
*** Output directory will be '.\Release'
*** Suffix for binaries will be ''
*** Optional defines are ''
*** Dependency rules are not being used.

cl -nologo -c -W3 -YX -Fp.\Release\tcl_Dynamic\ -O2 -Op -Gs -MD
-I"..\win" -I"..\generic" -DTCL_PIPE_DLL=\"tclpip84.dll\"
-Fo.\Release\tcl_Dynamic\tclAppInit.obj ..\win\tclAppInit.c
cl : Command line warning D9002 : ignoring unknown option '-YX'
cl : Command line warning D9002 : ignoring unknown option '-Op'
tclAppInit.c
rc -fo .\Release\tcl_Dynamic\tclsh.res -r -i "..\generic"
-D__WIN32__ ..\win\tclsh.rc
cl -O2 -Op -Gs -nologo -c -W3 -YX -Fp.\Release\tcl_Dynamic\ -Zl
-DSTATIC_BUILD -I"..\win" -I"..\generic" -Fo.\Release\tcl_
Dynamic\tclStubLib.obj ..\generic\tclStubLib.c
cl : Command line warning D9002 : ignoring unknown option '-Op'
cl : Command line warning D9002 : ignoring unknown option '-YX'
tclStubLib.c
rc -fo .\Release\tcl_Dynamic\tcl.res -r -i "..\generic"
-D__WIN32__ ..\win\tcl.rc
cl -nologo -c -W3 -YX -Fp.\Release\tcl_Dynamic\ -O2 -Op -Gs -MD
-I"..\win" -I"..\generic" -DTCL_PIPE_DLL=\"tclpip84.dll\"
-DBUILD_tcl -Fo.\Release\tcl_Dynamic\
@C:\DOCUME~1\roetel\LOCALS~1\Temp\nm78.tmp
cl : Command line warning D9002 : ignoring unknown option '-YX'
cl : Command line warning D9002 : ignoring unknown option '-Op'
regcomp.c
..\generic\regcomp.c(455) : warning C4267: 'function' : conversion from
'size_t' to 'unsigned int', possible loss of data
..\generic\regcomp.c(460) : warning C4267: 'function' : conversion from
'size_t' to 'unsigned int', possible loss of data
d:\develop\external\tcltk\tcl8.4.12\generic\regc_color.c(247) : warning
C4267: 'function' : conversion from 'size_t' to 'unsig
ned int', possible loss of data
d:\develop\external\tcltk\tcl8.4.12\generic\regc_color.c(253) : warning
C4267: 'function' : conversion from 'size_t' to 'unsig
ned int', possible loss of data
d:\develop\external\tcltk\tcl8.4.12\generic\regc_nfa.c(1234) : warning
C4267: 'function' : conversion from 'size_t' to 'unsign
ed int', possible loss of data
d:\develop\external\tcltk\tcl8.4.12\generic\regc_nfa.c(1235) : warning
C4267: 'function' : conversion from 'size_t' to 'unsign
ed int', possible loss of data
d:\develop\external\tcltk\tcl8.4.12\generic\regc_nfa.c(1244) : warning
C4267: '=' : conversion from 'size_t' to 'int', possibl
e loss of data
d:\develop\external\tcltk\tcl8.4.12\generic\regc_cvec.c(50) : warning
C4267: 'function' : conversion from 'size_t' to 'unsigne
d int', possible loss of data
d:\develop\external\tcltk\tcl8.4.12\generic\regc_cvec.c(133) : warning
C4244: '=' : conversion from '__int64' to 'int', possib
le loss of data
regerror.c
regexec.c
..\generic\regexec.c(207) : warning C4267: 'function' : conversion from
'size_t' to 'unsigned int', possible loss of data
..\generic\regexec.c(224) : warning C4267: 'function' : conversion from
'size_t' to 'unsigned int', possible loss of data
..\generic\regexec.c(287) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(289) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(290) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(323) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(324) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(327) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(329) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(330) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(372) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(374) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(375) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(438) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(439) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(527) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(528) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(778) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(816) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(871) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
..\generic\regexec.c(909) : warning C4244: '=' : conversion from
'__int64' to 'regoff_t', possible loss of data
d:\develop\external\tcltk\tcl8.4.12\generic\rege_dfa.c(298) : warning
C4267: 'function' : conversion from 'size_t' to 'unsigne
d int', possible loss of data
::
::
::

falk.vo...@web.de

unread,
Sep 26, 2006, 2:16:52 AM9/26/06
to
or is my problem that I have not an AMD processor. I have an INTEL?

Pat Thoyts

unread,
Sep 26, 2006, 4:55:43 AM9/26/06
to
falk.vo...@web.de writes:

>or is my problem that I have not an AMD processor. I have an INTEL?
>

There are some issues at the moment. I'm currently poking at the msvc8
configuration flags. I believe the 8.5 HEAD is working ok now.

falk.vo...@web.de

unread,
Oct 4, 2006, 3:25:25 AM10/4/06
to
Have some one other an idea where the problem is? At the moment I have
no starting point where I must search. Is it the simple problem that I
have not a AMD CPU or I have not the corrrect SDK?

I hope myself can still someone help.

falk.vo...@web.de

unread,
Nov 23, 2006, 5:14:02 AM11/23/06
to
I have a "Intel Pentium D" CPU with Windows x64. Is this not the
correct CPU / OS for compiling Tcl 64 bit?


falk.vo...@web.de schrieb:

0 new messages