язык Tcl: установка и настройка

Вопросы написания собственного программного кода (на любых языках)

Модератор: Olej

Аватара пользователя
perseus
Писатель
Сообщения: 99
Зарегистрирован: 11 май 2017, 18:01
Откуда: Щёлково, Московская обл.
Контактная информация:

язык Tcl: установка и настройка

Непрочитанное сообщение perseus » 16 май 2017, 21:22

Где и как можно скачать для Fedora расширение Thread для tcl ?
список моих подключенных репозиториев:

Код: Выделить всё

[maksim@asus ~]$ dnf repolist
Последняя проверка окончания срока действия метаданных: 3:07:58 назад, Tue May 16 18:07:43 2017.
Идентификатор репозитория                      репозиторий                                                       состояние
*fedora                                        Fedora 25 - i386                                                  43 723
fedora-cisco-openh264                          Fedora 25 openh264 (From Cisco) - i386                                 4
*rpmfusion-free                                RPM Fusion for Fedora 25 - Free                                      419
*rpmfusion-free-updates                        RPM Fusion for Fedora 25 - Free - Updates                            151
*rpmfusion-nonfree                             RPM Fusion for Fedora 25 - Nonfree                                   140
*rpmfusion-nonfree-updates                     RPM Fusion for Fedora 25 - Nonfree - Updates                          39
russianfedora-free                             Russian Fedora for Fedora 25 - Free                                   87
russianfedora-free-updates                     Russian Fedora for Fedora 25 - Free - Updates                         37
russianfedora-nonfree                          Russian Fedora for Fedora 25 - Nonfree                                40
russianfedora-nonfree-updates                  Russian Fedora for Fedora 25 - Nonfree - Updates                      24
*updates                                       Fedora 25 - i386 - Updates                                        16 558
но найти там нужного расширения не получается (в репозиториях LinuxMint этот пакет называется tcl-thread)

Код: Выделить всё

[maksim@asus ~]$ dnf info tcl-thread*
Последняя проверка окончания срока действия метаданных: 3:12:09 назад, Tue May 16 18:07:43 2017.
Ошибка: Совпадений среди пакетов не найдено

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Fedora 24 и далее...

Непрочитанное сообщение Olej » 16 май 2017, 21:56

perseus писал(а): но найти там нужного расширения не получается (в репозиториях LinuxMint этот пакет называется tcl-thread)

Код: Выделить всё

[maksim@asus ~]$ dnf info tcl-thread*
Последняя проверка окончания срока действия метаданных: 3:12:09 назад, Tue May 16 18:07:43 2017.
Ошибка: Совпадений среди пакетов не найдено
В разных дистрибутивах названия пакетов отличаются.

Аватара пользователя
perseus
Писатель
Сообщения: 99
Зарегистрирован: 11 май 2017, 18:01
Откуда: Щёлково, Московская обл.
Контактная информация:

Re: Fedora 24 и далее...

Непрочитанное сообщение perseus » 20 май 2017, 18:13

Работаю в Fedora25
Скачал я из репозиториев Tcl/Tk исходные коды пакета для расширения Thread (файл прилагаю)
собралось всё хорошо, без ошибок и предупреждений,
даже тест выполняется когда make test задаёшь,
инсталировал вроде правильно всё, в скрипте CONFIG указал
../configure --enable-threads --with-tclconfig=/usr/lib64/tcl8.6
всё по папочкам разложилось, даже man thread странички описания показывает
НО, когда запусаешь tclsh и пытаешься загрузить это расширение Thread,
выдаётся can't find package Thread

Код: Выделить всё

tests ended at Sat May 20 17:53:05 MSK 2017
all.tcl:	Total	116	Passed	116	Skipped	0	Failed	0
Sourced 0 Test Files.
[maksim@hp unix]$ sudo make install
 /bin/sh ../tclconfig/install-sh -c  -m 644 libthread2.7.3.so /usr/lib/thread2.7.3/libthread2.7.3.so
 : /usr/lib/thread2.7.3/libthread2.7.3.so
 Install ttrace.tcl /usr/lib/thread2.7.3/ttrace.tcl
 Install pkgIndex.tcl /usr/lib/thread2.7.3
Installing header files in /usr/include
Installing ../generic/tclThread.h
Installing documentation in /usr/man
Installing ../doc/man/thread.n
Installing ../doc/man/tpool.n
Installing ../doc/man/tsv.n
Installing ../doc/man/ttrace.n
[maksim@hp unix]$ tclsh
% package require Thread
can't find package Thread
% exit
В чём дело? Почему tclsh не может найти пакет? :-(
rpm пакеты tcl я устанавливал с помощью sudo dnf install tcl из репозитория
Вложения
thread2.7.3.tar.gz
(284.5 КБ) 138 скачиваний

Аватара пользователя
perseus
Писатель
Сообщения: 99
Зарегистрирован: 11 май 2017, 18:01
Откуда: Щёлково, Московская обл.
Контактная информация:

Re: Fedora 24 и далее...

Непрочитанное сообщение perseus » 20 май 2017, 22:25

Вобщем пришлось папку thread2.7.3 ,которую make install почему-то положил в usr/lib, подсунуть в папку usr/lib64/tcl8.6
и только после этого tclsh смог увидеть расширение Thread :-D

Код: Выделить всё

[maksim@hp ~]$ tclsh8.6
% package require Thread
2.7.3
% 
Это что-то неправильно прописано где-то в установочном скрипте ? :twisted:
Наверно нужно было в установочном скрипте CONFIG указывать еще --exec-prefix=/usr/lib64/tcl8.6
но откуда, бляха-муха, это мне знать до того как я его установлю :lol:

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Fedora 24 и далее...

Непрочитанное сообщение Olej » 21 май 2017, 11:21

perseus писал(а):Вобщем пришлось папку thread2.7.3 ,которую make install почему-то положил в usr/lib, подсунуть в папку usr/lib64/tcl8.6
и только после этого tclsh смог увидеть расширение Thread :-D

Код: Выделить всё

[maksim@hp ~]$ tclsh8.6
% package require Thread
2.7.3
% 
Это что-то неправильно прописано где-то в установочном скрипте ? :twisted:
Наверно нужно было в установочном скрипте CONFIG указывать еще --exec-prefix=/usr/lib64/tcl8.6
но откуда, бляха-муха, это мне знать до того как я его установлю :lol:
Хотел ещё вчера ответить ... но не успеваю :-(
Могу предположить (информации мало) что причина вашей неприятности - пути, по которым пакет ищет библиотеку и не находит.
Это достаточно обычная история при сборке из исходников, дело в опции --prefix=path при выполнении configure, которую в разных дистрибутивах Linux устанавливают по-разному и отличающимся от значения, принятого в компилируемом пакете по умолчанию.
Но у вас, похоже, такая же, но чуть другая история:
- пакет старый ... f15?
- рассчитанный на 32-бит архитетуру
- где библиотеки ставились в /lib
- а у вас 64-бит архитектура, где 2 каталога для библиотек: /lib для 32 бит и /lib64 для 64 бит
Вот оно вам и втулио в /usr/lib.
Вам достаточно было просто сделать ссылку (# ln ...).

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: язык Tcl: установка и настройка

Непрочитанное сообщение Olej » 21 май 2017, 11:50

perseus писал(а):Где и как можно скачать для Fedora расширение Thread для tcl ?
Я выделил ваше обсуждение относительно Tcl/Tk в отдельную тему, потому что, если понадобится вспомнить, то уже недели через 2 ни вы, ни я, никто - не найдёт в общей теме где это такое обсуждалось.
Кроме того, здесь в форуме уже был интерес к Tcl, поэтому я поднял вверх ту тему: Вопрос по языку TCL.

Аватара пользователя
perseus
Писатель
Сообщения: 99
Зарегистрирован: 11 май 2017, 18:01
Откуда: Щёлково, Московская обл.
Контактная информация:

Re: Fedora 24 и далее...

Непрочитанное сообщение perseus » 21 май 2017, 12:15

Могу предположить (информации мало) что причина вашей неприятности - пути, по которым пакет ищет библиотеку и не находит.
Это достаточно обычная история при сборке из исходников, дело в опции --prefix=path при выполнении configure, которую в разных дистрибутивах Linux устанавливают по-разному и отличающимся от значения, принятого в компилируемом пакете по умолчанию.
Но у вас, похоже, такая же, но чуть другая история:
- пакет старый ... f15?
- рассчитанный на 32-бит архитетуру
- где библиотеки ставились в /lib
- а у вас 64-бит архитектура, где 2 каталога для библиотек: /lib для 32 бит и /lib64 для 64 бит
Вот оно вам и втулио в /usr/lib.
Внесу немного ясности (просто для истории этой темы), я скачал файл расширения отсюда (он не особо старый 2016-03-07, там есть и постарее):
https://sourceforge.net/projects/tcl/files/
там просто исходники программ - это не пакеты rpm или deb, их приходится собирать под свою ОС.
К каждому архиву прилагается конфигурационный файл CONFIG в соответствующей директории win-для Винды, unix-для Никсов.
С этого файла и надо начинать установку, но перед этим его надо правильно настроить,
указать правильно опции --path и --exec-parth привыполнении cohfigure, может и еще какие-либо опции - это зависит от того, что вы устанавливаете.
И тогда всё инсталируется правильно с первого раза.
Вам достаточно было просто сделать ссылку (# ln ...).
По поводу ссылки - хорошая мысль, спасибо за подсказку :-)

Аватара пользователя
perseus
Писатель
Сообщения: 99
Зарегистрирован: 11 май 2017, 18:01
Откуда: Щёлково, Московская обл.
Контактная информация:

Re: язык Tcl: установка и настройка

Непрочитанное сообщение perseus » 21 май 2017, 12:29

А где можно почитать документацию или описание к программе configure,
чтобы получше разобраться в различных её возможностях ?
Потому как в man её описание отсутствует (или можно это из репозиториев скачать ?)

Код: Выделить всё

[maksim@hp ~]$ man gonfigure
Нет справочной страницы для gonfigure
[maksim@hp ~]$ 

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: язык Tcl: установка и настройка

Непрочитанное сообщение Olej » 21 май 2017, 13:26

perseus писал(а):А где можно почитать документацию или описание к программе configure,
чтобы получше разобраться в различных её возможностях ?
Потому как в man её описание отсутствует (или можно это из репозиториев скачать ?)
configure - это составная часть целой группы tools под общим названием Autoconf - инструментов для составления портируемых исходных кодов в различных UNIX, очень старая и очень много используемая система...
Про configure можно бы "почитать" 2 совершенно разных направления публикаций:
1. как составить свой собственный configure для своего проекта?
2. как использовать configure из существующих проектов в исходных кодах?

Вот по 2-му направлению есть хорошая заметка: Запуск скриптов configure.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: язык Tcl: установка и настройка

Непрочитанное сообщение Olej » 21 май 2017, 13:53

perseus писал(а):А где можно почитать документацию или описание к программе configure,
configure, вообще то говоря, это не какая-то программа, а индивидуальный скрипт, который каждый разработчик программного проекта сам пишет (подготавливает) под свой программный код.
Просто это настолько часто приходится делать, что для создания такого скрипта создали целый набор программ, автоматизирующих этот процесс: autoconf, automake, libtools и т.д. (можете по ним поискать man).
Но смысл этого в том (и я для этого написал это), что configure каждого конкретного программного проекта имеет режим help:

Код: Выделить всё

$ configure --help
Здесь показываются общие опции, такие как --prefix=... , но хорошие разработчики ;-) включают в этот help свои специфические опции, относящиеся к конкретному их проекту.

Ответить

Вернуться в «Программирование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 8 гостей