pacman -Qs bwidget
local/bwidget 1.9.16-1
A suite of megawidgets for Tk
checking for __sincos... no
checking for tcl... /usr/lib/tclConfig.sh found
checking for tk... /usr/lib/tkConfig.sh found
checking whether to check for runtime dependencies... yes
checking for BWidget using /usr/bin/tclsh8.6... no
configure: error: BWidget not found!
install with "sudo apt-get install bwidget"
==> ОШИБКА: Произошел сбой в build().
Прерывание...
Не удалось выполнить команду 'makepkg --force'.
[РЕШЕНО] tcl + tclx + linuxcnc-sim + bwidget
Опять. Прилетело обновление tcl, что потянуло за собой пересборку tclx and linuxcnc-sim. Но затык - при борке linuxcnc проверяет факт установки bwidget, который установлен, но не обнаруживает его и все падает.
Как преодолеть?
Последний раз редактировалось lnx 10.02.2023 17:36, всего редактировалось 3 раза.
Если ставишь пакеты из AUR, то будь готов к решению проблем ... и в 1-ую очередь нужно зайти на AUR и посмотреть Latest Comments ... если проблему еще не описали другие, опиши сам .... и жди, что ответит разработчика.lnx:Как преодолеть?
Пользователи Arch, которые не используют данный левый софт, вряд ли смогут помочь тебе в этом.
PS - а проблема похоже уже описана - https://aur.archlinux.org/packages/linuxcnc-sim
Ошибки не исчезают с опытом - они просто умнеют
Припомнил, что сталкивался с аналогичной ситуацией с camotics https://aur.archlinux.org/packages/camotics-git и тогда сперва решил вопрос костылем https://forum.freecadweb.org/viewtopic. ... 25#p607025
ln -s /home/user/.cache/pikaur/build/camotics-git/src/camotics/build/camotics.so /usr/lib/python3.10/site-packages/
и затем разработчик пакета это сам поправил. Попробовал пойти по аналогии, но find никаких so не находит, есть лишь -
/usr/lib/tcl8.6/bwidget-1.9.16/demo/bwidget.xbm
Но в топике bwidget в Ауре, https://aur.archlinux.org/packages/bwidget, есть анализ проблемы (пакет разворачивается без прав юзеров даже открыать директорий) и, соответственно, есть решение -
chmod -R o+rX /usr/lib/tcl8.6/bwidget-1.9.16
Этот этап прошли, но уткнулся в следующий -
по памяти из https://archlinux.org.ru/forum/topic/20584/?page=2 покамест пошел пересобирать boost-python2 - не помогло.
ln -s /home/user/.cache/pikaur/build/camotics-git/src/camotics/build/camotics.so /usr/lib/python3.10/site-packages/
и затем разработчик пакета это сам поправил. Попробовал пойти по аналогии, но find никаких so не находит, есть лишь -
/usr/lib/tcl8.6/bwidget-1.9.16/demo/bwidget.xbm
Но в топике bwidget в Ауре, https://aur.archlinux.org/packages/bwidget, есть анализ проблемы (пакет разворачивается без прав юзеров даже открыать директорий) и, соответственно, есть решение -
chmod -R o+rX /usr/lib/tcl8.6/bwidget-1.9.16
Этот этап прошли, но уткнулся в следующий -
checking python version... OK
checking version of python libraries... python2.7
checking match between tk and Tkinter versions... 8.6
checking location of Python header files... /usr/include/python2.7
checking for Python headers... -I/usr/include/python2.7
checking for Python libraries... -ldl
checking whether the Boost::Python headers are available... yes
checking for boost::python shared library...
configure: error: boost::python is required to build LinuxCNC
==> ОШИБКА: Произошел сбой в build().
Прерывание...
Насколько я понимаю, большинство прог из AUR тебе нужны в основном для своей основной работы.
Если это так, то не проще ли будет поступить следующим образом:
- создать на диске дополнительный раздел
- создать на этом разделе клон работающей системы (конечно же с работающими програми)
- обновлять эту систему-клон 1-2 раза в год и только в случае работоспособности основной системы (под обновлением имею ввиду клонирование, точнее, простое копирование).
А если основаная система заимела проблемы с нужными програми, то можно спокойно выполнять нужные работы из системы-клон.
После решения проблем в основной системе можно выполнить и клонирование.
Проблем будет на много меньше. Клонирование системы займет максимум минут 30, а если без документов, не входящих в систему, то и того меньше.
Если это так, то не проще ли будет поступить следующим образом:
- создать на диске дополнительный раздел
- создать на этом разделе клон работающей системы (конечно же с работающими програми)
- обновлять эту систему-клон 1-2 раза в год и только в случае работоспособности основной системы (под обновлением имею ввиду клонирование, точнее, простое копирование).
А если основаная система заимела проблемы с нужными програми, то можно спокойно выполнять нужные работы из системы-клон.
После решения проблем в основной системе можно выполнить и клонирование.
Проблем будет на много меньше. Клонирование системы займет максимум минут 30, а если без документов, не входящих в систему, то и того меньше.
Ошибки не исчезают с опытом - они просто умнеют
а вот не надо было мне скупиться, надо было персобрать boost-python2 + boost-python2-libs и все починилось. Ох уж этот коварный tcl, не в первый раз его обновление вредит.lnx: по памяти из https://archlinux.org.ru/forum/topic/20584/?page=2 покамест пошел пересобирать boost-python2 - не помогло.
checking for python pango and cairo modules... Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/lib/python2.7/site-packages/cairo/__init__.py", line 1, in <module>
from ._cairo import * # noqa: F401,F403
ImportError: /usr/lib/python2.7/site-packages/cairo/_cairo.so: undefined symbol: cairo_tee_surface_index
no
configure: error: Python pango and cairo modules not found!
install with "sudo apt-get install python-gtk2"
==> ОШИБКА: Произошел сбой в build().
Прерывание...
Не удалось выполнить команду 'makepkg --force'.
:: Попробовать восстановить?
[R] повторить сборку
В зависимостях пкбилда такого пакета нет (был бы - сборка бы и не запускалась)
File "<string>", line 1, in <module>
File "/usr/lib/python2.7/site-packages/cairo/__init__.py", line 1, in <module>
from ._cairo import * # noqa: F401,F403
ImportError: /usr/lib/python2.7/site-packages/cairo/_cairo.so: undefined symbol: cairo_tee_surface_index
no
configure: error: Python pango and cairo modules not found!
install with "sudo apt-get install python-gtk2"
==> ОШИБКА: Произошел сбой в build().
Прерывание...
Не удалось выполнить команду 'makepkg --force'.
:: Попробовать восстановить?
[R] повторить сборку
В зависимостях пкбилда такого пакета нет (был бы - сборка бы и не запускалась)
Вчера были приняты обновления -
как раз словой cairo было в ругани, вопрос решился даунгрейдом -
downgrade lib32-cairo cairo
фев 9 00:44 qt5-base-5.15.8+kde+r181-1-x86_64.pkg.tar.zst
фев 9 01:26 zsh-5.9-3-x86_64.pkg.tar.zst.sig
фев 9 01:26 zsh-5.9-3-x86_64.pkg.tar.zst
фев 9 02:16 lib32-cairo-1.17.8-2-x86_64.pkg.tar.zst.sig
фев 9 02:16 lib32-cairo-1.17.8-2-x86_64.pkg.tar.zst
фев 9 02:16 cairo-1.17.8-2-x86_64.pkg.tar.zst.sig
фев 9 02:16 cairo-1.17.8-2-x86_64.pkg.tar.zst
фев 9 02:28 aom-3.6.0-1-x86_64.pkg.tar.zst.sig
фев 9 02:28 aom-3.6.0-1-x86_64.pkg.tar.zst
фев 9 02:29 texinfo-7.0.2-2-x86_64.pkg.tar.zst.sig
фев 9 02:29 texinfo-7.0.2-2-x86_64.pkg.tar.zst
фев 9 15:23 libgusb-0.4.5-1-x86_64.pkg.tar.zst.sig
фев 9 15:23 libgusb-0.4.5-1-x86_64.pkg.tar.zst
фев 9 16:20 zvbi-0.2.40-1-x86_64.pkg.tar.zst.sig
фев 9 16:20 zvbi-0.2.40-1-x86_64.pkg.tar.zst
фев 9 16:38 lib32-sdl2-2.26.3-1-x86_64.pkg.tar.zst.sig
фев 9 16:38 lib32-sdl2-2.26.3-1-x86_64.pkg.tar.zst
фев 9 22:23 libxfce4ui-4.18.2-1-x86_64.pkg.tar.zst
фев 9 22:23 libxfce4ui-4.18.2-1-x86_64.pkg.tar.zst.sig
фев 9 22:53 python-zipp-3.13.0-1-any.pkg.tar.zst
фев 9 23:08 python-zipp-3.13.0-1-any.pkg.tar.zst.sig
фев 9 23:23 python-tenacity-8.2.1-1-any.pkg.tar.zst
фев 9 23:23 python-tenacity-8.2.1-1-any.pkg.tar.zst.sig
downgrade lib32-cairo cairo
Коллеги, свою личную сборку linuxcnc-sim я берегу, но вот возникла необходимость собрать новую и передать ее за много км.
В Ауре уже нет linuxcnc-sim, есть только linuxcnc2.9 + linuxcnc-git 2.9. Для непосвященных переход от 2.7 к 2.8 ознаменовал переход на systemd + штатная возможность "два мотора на одну ось". От 2.8 к 2.9 частично изменил математику и для него нет возможности адаптировать вручную сделанный модуль ядра для принудительного перекоса портала и компенсации его кривизны (повышает жесткость + выборка зазоров). И если для рабочей, станочной машины, я наловчился размножать свою вылизанную рабочую систему 2.8 (клонированием дисков), то с sim, которая нужна на конструкторской машине для быстрого понимания "как оно выходит в реальности", подойдет любая.
Так вот летом 2025г. при попытке установки из Ауры я получаю аборты сборки -
Какие будут мнения? как продвинуться до реальной сборки хоть какого-то из пакетов? Ни pacman, и AUR пакета python3-gi не знают.
Мнений такое: либо вариант сборки из исходников https://www.linuxcnc.org/docs/devel/htm ... uxcnc.html, либо воспользоваться одним из Aur-repo, опубликованных здесь https://github.com/taotieren/aur-repo и, например, из репозитория
командой pacman -S linuxcnc-git программа устанавливается, подтягивая некоторые зависимости и по дороге ругаясь на ключи.
В Ауре уже нет linuxcnc-sim, есть только linuxcnc2.9 + linuxcnc-git 2.9. Для непосвященных переход от 2.7 к 2.8 ознаменовал переход на systemd + штатная возможность "два мотора на одну ось". От 2.8 к 2.9 частично изменил математику и для него нет возможности адаптировать вручную сделанный модуль ядра для принудительного перекоса портала и компенсации его кривизны (повышает жесткость + выборка зазоров). И если для рабочей, станочной машины, я наловчился размножать свою вылизанную рабочую систему 2.8 (клонированием дисков), то с sim, которая нужна на конструкторской машине для быстрого понимания "как оно выходит в реальности", подойдет любая.
Так вот летом 2025г. при попытке установки из Ауры я получаю аборты сборки -
linuxcnc:
checking for BWidget using /usr/bin/tclsh8.6... found
checking for BLT using /usr/bin/tclsh8.6... not found
checking for tclX using /usr/bin/tclsh8.6... found
checking for python pango module... Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named gi
no
configure: error: Python pango module not found!
install with "sudo apt-get install python3-gi"
==> ОШИБКА: Произошел сбой в prepare().
Прерывание...
Не удалось выполнить команду 'sudo --user=#1000 --preserve-env=VISUAL,EDITOR -- makepkg --force'.
linuxcnc-git:
| ^~~~~~~~~
termcap.c:636:17: ошибка: too many arguments to function «gobble_line»; expected 0, have 3
636 | end = gobble_line (fd, bufp, end);
| ^~~~~~~~~~~ ~~
termcap.c:393:14: замечание: объявлено здесь
393 | static char *gobble_line ();
| ^~~~~~~~~~~
termcap.c:641:14: ошибка: too many arguments to function «name_match»; expected 0, have 2
641 | && name_match (bufp->ptr, str))
| ^~~~~~~~~~ ~~~~~~~~~
termcap.c:395:12: замечание: объявлено здесь
395 | static int name_match ();
| ^~~~~~~~~~
termcap.c: В функции «name_match»:
termcap.c:654:1: предупреждение: определение функции в старом стиле [-Wold-style-definition]
654 | name_match (line, name)
| ^~~~~~~~~~
termcap.c:659:8: ошибка: too many arguments to function «compare_contin»; expected 0, have 2
659 | if (!compare_contin (line, name))
| ^~~~~~~~~~~~~~ ~~~~
termcap.c:394:12: замечание: объявлено здесь
394 | static int compare_contin ();
| ^~~~~~~~~~~~~~
termcap.c:663:25: ошибка: too many arguments to function «compare_contin»; expected 0, have 2
663 | if (*tem == '|' && !compare_contin (tem + 1, name))
| ^~~~~~~~~~~~~~ ~~~~~~~
termcap.c:394:12: замечание: объявлено здесь
394 | static int compare_contin ();
| ^~~~~~~~~~~~~~
termcap.c: В функции «compare_contin»:
termcap.c:670:1: предупреждение: определение функции в старом стиле [-Wold-style-definition]
670 | compare_contin (str1, str2)
| ^~~~~~~~~~~~~~
termcap.c: В функции «gobble_line»:
termcap.c:711:1: предупреждение: определение функции в старом стиле [-Wold-style-definition]
711 | gobble_line (fd, bufp, append_end)
| ^~~~~~~~~~~
==> ОШИБКА: Произошел сбой в build().
Прерывание...
Не удалось выполнить команду 'sudo --user=#1000 --preserve-env=VISUAL,EDITOR -- makepkg --force'.
Какие будут мнения? как продвинуться до реальной сборки хоть какого-то из пакетов? Ни pacman, и AUR пакета python3-gi не знают.
Мнений такое: либо вариант сборки из исходников https://www.linuxcnc.org/docs/devel/htm ... uxcnc.html, либо воспользоваться одним из Aur-repo, опубликованных здесь https://github.com/taotieren/aur-repo и, например, из репозитория
[aur-repo]
## China Telecom Network (200Mbps) (ipv4, http, https)
Server = https://rom.ie8.pub:2443/aur-repo/$arch
Последний раз редактировалось lnx 25.07.2025 14:18, всего редактировалось 1 раз.
Спасибо за подсказку, но если речь была об установке pikaur -S linuxcnc, то и после установки этого пакета ничего не изменилось -ALiEN:pacman -S python-gobject
checking for tclX using /usr/bin/tclsh8.6... found
checking for python pango module... Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named gi
no
configure: error: Python pango module not found!
install with "sudo apt-get install python3-gi"
==> ОШИБКА: Произошел сбой в prepare().
Прерывание...
Не удалось выполнить команду 'sudo --user=#1000 --preserve-env=VISUAL,EDITOR -- makepkg --force'.
🛴 Попробовать восстановить?
[R] повторить сборку
хм, ради интереса попробовал у себя собратьlnx:Спасибо за подсказку, но если речь была об установке pikaur -S linuxcnc, то и после установки этого пакета ничего не изменилось -ALiEN:pacman -S python-gobject
yay -Syu linuxcnc
$ pacman -Qi linuxcnc
Название : linuxcnc
Версия : 2.9.4-1
Описание : Controls CNC machines. It can drive milling machines, lathes, 3d printers, laser cutters, plasma cutters, robot arms, hexapods, and more (formerly EMC2)
Архитектура : x86_64
URL : https://linuxcnc.org/
Лицензии : GPL2 custom: unredestributable
Группы : Нет
Предоставляет : Нет
Зависит от : glibc python gtk3 libusb libxss python-cairo gobject-introspection-runtime dbus-python python-pillow libxmu python-gobject tk python-matplotlib boost-libs python-numpy gstreamer at-spi2-core libepoxy libtirpc libxft harfbuzz gcc-libs fontconfig gdk-pixbuf2 libxext librsvg glib2 zlib cairo readline systemd-libs freetype2 libx11 libxinerama python-configobj libgpiod python-yapps2 tcl pango bwidget
Доп. зависимости : Нет
Требуется : Нет
Опционально для : Нет
Конфликтует с : Нет
Заменяет : Нет
Установленный размер : 124,80 MiB
Сборщик : Unknown Packager
Дата сборки : Пн 28 июл 2025 08:20:52
Дата установки : Пн 28 июл 2025 08:29:33
Причина установки : Явно установлен
Установочный скрипт : No
Проверен : Нет
После Вашего сообщения проверил у себя зависимости, прямо по списку из Вашего сообщения "зависит от", обновил из Ауры bwidget, у меня была версия 1.9 и было подумал "ну вот причина", однако и после этого -
Пошел исать дальше, нашел эту тему - https://bbs.archlinux.org/viewtopic.php?id=204849
Помню буквально недавно, в борьбе за него же, видимо linuxcnc-git, кто-то потребовал замены python2-gobject на python2-gobject2. Попытка вернуть python2-gobject из ауры тоже обломалась
checking for tclX using /usr/bin/tclsh8.6... found
checking for python pango module... Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named gi
no
configure: error: Python pango module not found!
install with "sudo apt-get install python3-gi"
==> ОШИБКА: Произошел сбой в prepare().
Прерывание...
Не удалось выполнить команду 'sudo --user=#1000 --preserve-env=VISUAL,EDITOR -- makepkg --force'.
🛴 Попробовать восстановить?
[R] повторить сборку
[p] пропустить проверку PGP-подписи
python -c "import gi; print(gi.__spec__)"
ModuleSpec(name='gi', loader=<_frozen_importlib_external.SourceFileLoader object at 0x7f57653f7d50>, origin='/usr/lib/python3.13/site-packages/gi/__init__.py', submodule_search_locations=['/usr/lib/python3.13/site-packages/gi'])
../pygobject/tests/regressextra.h:78:7: ошибка: expected «=», «,», «;», «asm» or «__attribute__» before «regress_test_action_get_type»
78 | GType regress_test_action_get_type (void);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
[22/56] Compiling C object tests/libgimarshalling...ct-introspection-1.0_tests_gimarshallingtests.c.o
ninja: build stopped: subcommand failed.
==> ОШИБКА: Произошел сбой в build().
Прерывание...
так это вы какую собираете ? git-версию (linuxcnc-git ) ?lnx:и было подумал "ну вот причина", однако и после этого -
так она у меня тоже не собирается, там проблема с пакетом termcap который нужен для сборки linuxcnc-git, но вот со сборкой linuxcnc проблем не возникает
я конечно всё понимаю но apt-get ...lnx:configure: error: Python pango module not found! install with "sudo apt-get install python3-gi" ==> ОШИБКА: Произошел сбой в prepare(). Прерывание...
да не, похоже на сборку из исходников если судить по его PKGBUILDlnx:Со всей очевидностью linuxcnc является попыткой перепаковки убунтовского пакета
а данное сообщение исходит отсюда
хотя сам автор похоже больше ориентируется на debian отсюда и такие отсылки по установке доп пакетов в сообщениях.
а судя по этой теме то косяк может вылезти и в самом дебиане даже с уже установленным пакетом python3-gi
Бог с ним, коли есть решение в виде репозитория арч-пакетов, откуда ставится. Теперь жду развития событий (на удаленной машине). ибо себе ставить не хочу, у меня 2.8.4. А как создать пакет из установленной системы, не смотря на давнишние поиски и попытки, я до сих пор не знаю.Arhei: да не, похоже на сборку из исходников если судить по его PKGBUILD
не совсем понятно, если имеете в виду перенести установленный ПАКЕТ на другую машину чтобы его там не собирать то можно его просто достать со своего кэша пакетов который находиться здесь:lnx:А как создать пакет из установленной системы
pacman-conf CacheDir
pacman -U ПАКЕТ
Так я умею и именно так передам туда 2.9. Но в моей стоит 2.8.4, которую собирать больше не из чего и потому если бы я мог из установленнйо системы сформировать пакет 2.8.4, то мог бы накатить 2.9, посмотреть и либо остаться, либо накатить обратно 2.8.4. Сечас же такая возможность есть только через резерв всей системы, снапшотами и т.п.Arhei: ПАКЕТ на другую машину чтобы его там не собирать то можно его просто достать со своего кэша пакетов который находиться здесь:pacman-conf CacheDir