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

tcllibc Windows 64bit?

114 views
Skip to first unread message

blacksqr

unread,
Dec 24, 2019, 6:30:56 PM12/24/19
to
Today I tried compiling tcllibc for the Windows platform, using my 64-bit Win10 computer, mingw-w64, tcllib 1.20 and critcl.exe downloaded from AK's critcl home page.

After setting up the environment and executing "tclsh sak.tcl critcl" within the tcllib directory, the tcllibc.dll file was compiled and placed in the subdirectory "tcllibc/win32-ix86". This is evidently a 32-bit dll.

When I try to require the tcllibc package (on the same computer I compiled on), the package loading code produced during the tcllibc.dll compile looks in the subdirectory "tcllibc/win32-x86_64", and doesn't find it obviously, so package tcllibc fails to load.

When I try to load the tcllibc.dll directly using the load command, I get: "Bad exec format. Possible a 32/64-bit mismatch."

Is there some magic incantation I can use to get critcl to compile tcllibc.dll in 64-bit format? Or is that not an option?

Robert Heller

unread,
Dec 24, 2019, 8:16:46 PM12/24/19
to
At Tue, 24 Dec 2019 15:30:54 -0800 (PST) blacksqr <stephen...@alum.mit.edu> wrote:

>
> Today I tried compiling tcllibc for the Windows platform, using my 64-bit W=
> in10 computer, mingw-w64, tcllib 1.20 and critcl.exe downloaded from AK's c=
> ritcl home page.
>
> After setting up the environment and executing "tclsh sak.tcl critcl" withi=
> n the tcllib directory, the tcllibc.dll file was compiled and placed in the=
> subdirectory "tcllibc/win32-ix86". This is evidently a 32-bit dll.
>
> When I try to require the tcllibc package (on the same computer I compiled =
> on), the package loading code produced during the tcllibc.dll compile looks=
> in the subdirectory "tcllibc/win32-x86_64", and doesn't find it obviously,=
> so package tcllibc fails to load.
>
> When I try to load the tcllibc.dll directly using the load command, I get: =
> "Bad exec format. Possible a 32/64-bit mismatch."
>
> Is there some magic incantation I can use to get critcl to compile tcllibc.=
> dll in 64-bit format? Or is that not an option?

Is the critcl.exe you downloaded from AK's critcl home page 32-bit or 64-bit?

>

--
Robert Heller -- 978-544-6933 Cell: 413-658-7953
Deepwoods Software -- Custom Software Services
http://www.deepsoft.com/ -- Linux Administration Services
hel...@deepsoft.com -- Webhosting Services

blacksqr

unread,
Dec 24, 2019, 9:16:43 PM12/24/19
to
>Is the critcl.exe you downloaded from AK's critcl home page 32-bit or 64-bit?

There was a single download link for critcl.exe on the critcl home page. I didn't see an option for another.

Robert Heller

unread,
Dec 25, 2019, 9:30:36 AM12/25/19
to
At Tue, 24 Dec 2019 18:16:41 -0800 (PST) blacksqr <stephen...@alum.mit.edu> wrote:

>
> >Is the critcl.exe you downloaded from AK's critcl home page 32-bit or 64-bit?
>
> There was a single download link for critcl.exe on the critcl home page. I didn't see an option for another.
>

I don't know if MS-Windows has a utility for checking an executable for
whether it is 32-bit or 64-bit (Linux has such a utility -- file). I would
suggest checking critcl.exe to determine this.

If it is indeed a 32-bit executable, you probably need to get the source code
and build a 64-bit version.

Harald Oehlmann

unread,
Dec 25, 2019, 12:52:08 PM12/25/19
to
Am 25.12.2019 um 15:30 schrieb Robert Heller:
> At Tue, 24 Dec 2019 18:16:41 -0800 (PST) blacksqr <stephen...@alum.mit.edu> wrote:
>
>>
>>> Is the critcl.exe you downloaded from AK's critcl home page 32-bit or 64-bit?
>>
>> There was a single download link for critcl.exe on the critcl home page. I didn't see an option for another.
>>
>
> I don't know if MS-Windows has a utility for checking an executable for
> whether it is 32-bit or 64-bit (Linux has such a utility -- file). I would
> suggest checking critcl.exe to determine this.
>
> If it is indeed a 32-bit executable, you probably need to get the source code
> and build a 64-bit version.
>
>

Take ashoks batteries included version. On a 64 bit computer, it will
install the 64 bit version.

blacksqr

unread,
Dec 26, 2019, 1:47:34 PM12/26/19
to
On Wednesday, December 25, 2019 at 11:52:08 AM UTC-6, Harald Oehlmann wrote:

> Take ashoks batteries included version. On a 64 bit computer, it will
> install the 64 bit version.

I looked at the Magicsplat distro, but it seems that it is compiled with Visual Studio, and its dlls are incompatible with my tclsh executable, which was cross-compiled using gcc.

I scrutinized critcl's Config file, which defines compilation targets. There's no defined option for compiling (or cross-compiling) a Windows 64-bit binary with gcc, and none of my attempts to define a new target were successful.

peter dean

unread,
Dec 26, 2019, 6:04:25 PM12/26/19
to
http://www.bawt.tcl3d.org/download.html#tclbi

compiled with mingw and I think it includes tcllibc already compiled

blacksqr

unread,
Dec 27, 2019, 11:58:08 AM12/27/19
to
On Thursday, December 26, 2019 at 5:04:25 PM UTC-6, peter dean wrote:
> http://www.bawt.tcl3d.org/download.html#tclbi
>
> compiled with mingw and I think it includes tcllibc already compiled

The precompiled tcllibc from BAWT worked for me, thanks for the tip.

Although eventually for security and accounting purposes I'll have to learn how to compile it myself, this will get me through the near term.
0 new messages