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

Difficulties installing Tcl Thread package

157 views
Skip to first unread message

Luis Mendes

unread,
Oct 17, 2023, 10:38:14 AM10/17/23
to
Hi,

I'd like to install the Tcl Thread package for my 8.6.13 Tcl version.

The 2.9 branch from https://core.tcl-lang.org/thread/timeline?y=ci seems
to be meant for newer versions of Tcl, so I downloaded the tarball from
the last commit for version 2.8 - https://core.tcl-lang.org/thread/info/
48e507d6c9591a01.

I wanted to install it in a RedHat machine but also tried this in a Devuan
x86_64 box.

Tried to follow the instructions.
Extract and gunzip.
cd unix
In file 'CONFIG' Uncommented the lines:
# grep -v '^#' CONFIG
CC=gcc; export CC
../configure --enable-threads

Then 'make' and `make test`.

Tests ended at Tue Oct 17 15:35:40 WEST 2023
all.tcl: Total 139 Passed 123 Skipped 16 Failed 0
Sourced 0 Test Files.
Number of tests skipped for each constraint:
8 have_gdbm
8 have_lmdb


Everything Ok, but `make install` fails.
It is meant to be installed in /usr/local by default.

In both distros, it fails with:

# make install
/bin/bash: ../tclconfig/install-sh: No such file or directory
make: *** [Makefile:460: install-lib-binaries] Error 127


Am I missing something, or is the installation broken?


Thanks in advance,


Luís Mendes


Harald Oehlmann

unread,
Oct 17, 2023, 11:17:49 AM10/17/23
to
Hi Luís,

the tread package is bundled with the tcl distribution. So, you may
extract the source from the tcl8.6.13 source distribution (folder
"pck"). If you would build TCL from source from the distro, it will
automatically include the thread package.

About your issue. The "make install" does not know where to put the
resulting dll. I suppose, /usr/local" is just a default.

When TCL is build, a "tclConfig.sh" file is created which contains all
the informations to build other packages. The path to this file should
be specified with the "./configure" command.

I am on Windows, sorry, no many details, but I suppose, this should help.

Take care,
Harald

greg

unread,
Oct 17, 2023, 11:46:11 AM10/17/23
to
Luis Mendes schrieb am Dienstag, 17. Oktober 2023 um 16:38:14 UTC+2:
> Hi,
>
> I'd like to install the Tcl Thread package for my 8.6.13 Tcl version.

with paket -manager

apt search tcl-thread

or
links to to compile:

https://www.tcl-lang.org/doc/howto/compile.html
https://wiki.tcl-lang.org/page/To+build+and+test+Tcl

and a example with mingw (Windows)

https://wiki.tcl-lang.org/page/Building+TclBlend+with+msys%5Fmingw

greg

Luis Mendes

unread,
Oct 17, 2023, 6:35:32 PM10/17/23
to
Hi Harald,

I tried to find that tclConfig.sh file:

# find / -iname tclConfig.sh
/usr/lib/tcl8.6/tclConfig.sh
/usr/lib/x86_64-linux-gnu/tcl8.6/tclConfig.sh

The first one just points to the second.
# cat /usr/lib/tcl8.6/tclConfig.sh
#! /bin/sh
. /usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH`/tcl8.6/tclConfig.sh


As per the instructions, I edited the file 'unix/CONFIG' as:
unix# grep -v '^#' CONFIG
CC=gcc; export CC
../configure --enable-threads \
--with-tcl=/usr/lib/x86_64-linux-gnu/tcl8.6/


Did the `make`, returns successfully, although the last line says:
"Zip entry offsets appear off by 98360 bytes - correcting..."


When `make install`, the same error:
unix# make install
/bin/bash: ../tclconfig/install-sh: No such file or directory
make: *** [Makefile:460: install-lib-binaries] Error 127

Should this `../tclconfig/install-sh` be created by the `make install`?
Where?

Tcl_package_Thread_source_code-48e507d6c9# find . -name tclconfig
Tcl_package_Thread_source_code-48e507d6c9# find . -name install-sh

Nothing shows up.



Luis

Harald Oehlmann

unread,
Oct 18, 2023, 3:21:05 AM10/18/23
to
AFAIK, install-sh is a script which basically copies files.
It is part of the TCL build machinery.

https://core.tcl-lang.org/tclconfig

This is always included in TCL. Maybe, you have a tcl-develop package,
which includes this file ?

Or the TEA files must be added to the thread source files. The windows
files are there, but no Unix files.

https://wiki.tcl-lang.org/page/TEA

https://core.tcl-lang.org/sampleextension/info/33580ef758b65fc8

Sorry,
Harald

Don Porter

unread,
Oct 18, 2023, 9:40:08 AM10/18/23
to
On 10/17/23 10:38, Luis Mendes wrote:
> # make install
> /bin/bash: ../tclconfig/install-sh: No such file or directory
> make: *** [Makefile:460: install-lib-binaries] Error 127
>
>
> Am I missing something, or is the installation broken?

You are missing the tclconfig (aka TEA) package.

https://core.tcl-lang.org/thread/wiki?name=Tracking+Thread+Sources

--
| Don Porter Applied and Computational Mathematics Division |
| donald...@nist.gov Information Technology Laboratory |
| http://math.nist.gov/~DPorter/ NIST |
|______________________________________________________________________|

Luis Mendes

unread,
Oct 18, 2023, 10:00:07 AM10/18/23
to
That tclconfig file is not installed in the system.
I can only find it at my home:
~/prog/tcl/libs/tkcon-master/tclconfig

Regarding development files for Tcl, there's these two installed, don't
know what is the difference between them or why Devuan/Debian have these
two different packages.
# apt search tcl | grep installed | grep dev
tcl-dev/stable,now 8.6.13 amd64 [installed]
tcl8.6-dev/stable,now 8.6.13+dfsg-2 amd64 [installed]

Still, no good:
Tcl_package_Thread_source_code-48e507d6c9/unix$ sudo make install
/bin/bash: ../tclconfig/install-sh: No such file or directory
make: *** [Makefile:460: install-lib-binaries] Error 127


Thanks,

Luis

Luis Mendes

unread,
Oct 18, 2023, 10:12:49 AM10/18/23
to
Hi Greg,

The Devuan machine has the tcl-thread package, but it's only a test box.
I need tcl-thread at a RHEL 8.6 system, and tcl-thread (or similar) can't
be found as a package.

I followed the instructions, but the problem is still:

Tcl_package_Thread_source_code-48e507d6c9/unix$ sudo make install
/bin/bash: ../tclconfig/install-sh: No such file or directory
make: *** [Makefile:460: install-lib-binaries] Error 127

Probably, I wouldn't have any problems in my old Slackware systems, but
it's not my choice to use RHEL.

Thanks,


Luis

greg

unread,
Oct 18, 2023, 10:46:27 AM10/18/23
to
How did you install Tcl/Tk on redhat?
From source or package manager (e.g. dnf)

What is with:
dnf info <package_name>
or
dnf info tcl-thread


https://rpmfind.net/linux/rpm2html/search.php?query=tcl-thread

Ted Nolan <tednolan>

unread,
Oct 18, 2023, 10:51:52 AM10/18/23
to
In article <652fe7dc$0$706$1472...@news.sunsite.dk>,
I only have access to RHEL 8.8, but these are the packages that
are installed on the system (via yum, no custom building) that
let me do "package require Thread" in tclsh8.6 successfully.


yum list installed | grep tcl
tcl.x86_64 1:8.6.8-2.el8 @rhel-8-for-x86_64-baseos-rpms
tcl-devel.x86_64 1:8.6.8-2.el8 @rhel-8-for-x86_64-baseos-rpms
tcl-thread.x86_64 2.8.8-1.el8 @epel
tcllib.noarch 1.19-3.el8 @epel
tcltls.x86_64 1.7.22-6.el8 @epel

("tcltls" will not be needed for this)
--
columbiaclosings.com
What's not in Columbia anymore..

Luis Mendes

unread,
Oct 19, 2023, 10:19:15 AM10/19/23
to
Hi Greg,

There were older versions, so I installed from source.

>
> What is with:
> dnf info <package_name>
> or dnf info tcl-thread
Error: No matching Packages to list


Thank you,

Luis

greg

unread,
Oct 20, 2023, 1:26:35 AM10/20/23
to
"I installed from source" can mean many things

tclConfig.sh
after 4) and make
in
/home/user/greg/build/tcl
I won't touch it

tcl:
info Dependencies
https://packages.fedoraproject.org/pkgs/tcl/tcl/fedora-rawhide.html
glibc

tk: not needed
https://packages.fedoraproject.org/pkgs/tk/tk-devel/fedora-rawhide.html
Dependencies
libX11-devel
libXft-devel


Install packages with dnf
dnf group install "Development Tools"

tcl:
dnf install zlib-devel
dnf install glibc-devel


1)
debian sid as host with virt-manager
Rocky Linux 9.2 install as kvm

2)
https://www.tcl.tk/software/tcltk/8.6.html
Download Tcl/Tk 8.6.13 Source Releases
+ Batteries Included: Tcl delivers in the pkgs subdirectory a bundled collection of third-party packages built and installed along with Tcl.
+ Thread-enabled Operations: A thread-enabled default build, a bundled Thread package, and new command interp cancel make Tcl 8.6 ready for your multi-threaded programming tasks.

#3)
unpackt in
home/user/greg/src/tcl/tcl8.6.13

mkdir /home/user/greg/build
mkdir /home/user/greg/build/tcl

4)
https://www.tcl-lang.org/doc/howto/compile.html
https://wiki.tcl-lang.org/page/Building+TclBlend+with+msys%5Fmingw
as user greg:

cd /home/user/greg/build/tcl
/home/greg/src/tcl8.6.13/unix/configure --prefix /opt/tcl --enable-threads
make
make test
sudo make install


5)
/opt/tcl/bin/tclsh8.6

6)
% package require Thread
2.8.8
% info patchlevel
8.6.13


not needed:

tk)
Dependencies!!

/home/greg/src/tk8.6.13/unix/configure --prefix /opt/tcl --enable-threads --with-tcl=/home/greg/build/tcl
make
make test
sudo make install


Luis Mendes

unread,
Dec 21, 2023, 4:55:18 PM12/21/23
to
On Wed, 18 Oct 2023 09:10:17 -0400, Don Porter wrote:

> On 10/17/23 10:38, Luis Mendes wrote:
>> # make install /bin/bash: ../tclconfig/install-sh: No such file or
>> directory make: *** [Makefile:460: install-lib-binaries] Error 127
>>
>>
>> Am I missing something, or is the installation broken?
>
> You are missing the tclconfig (aka TEA) package.
>
> https://core.tcl-lang.org/thread/wiki?name=Tracking+Thread+Sources

Hi Don,


Thank you very much, this solved my problem.


Luís
0 new messages