Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.HUSKY
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.HUSKY с датами от 16 Jul 13 10:00:06 до 08 Oct 24 19:48:54, всего сообщений: 5339
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 4993 из 5339 ========================================= RU.HUSKY =
От   : Alex Shuman                      2:463/877          01 Aug 22 02:10:49
Кому : Michael Dukelsky                                    01 Aug 22 02:10:49
Тема : Проблемы при сборке husky на *nix и их возможные решения
FGHI : area://RU.HUSKY?msgid=2:463/877+62e70bfc
На   : area://RU.HUSKY?msgid=2:5020/1042+62e6ce8b
= Кодировка сообщения определена как: CP866 ==================================
Ответ: area://RU.HUSKY?msgid=2:5020/1042+62e8d15e
Ответ: area://RU.HUSKY?msgid=2:5020/1042+62e8eb85
==============================================================================

 x) Sunday Jul 31, 2022, 20:21. Michael Dukelsky ── Alex Shuman.

AS>> Это всё про husky-all-1.9-source-20220708.zip

AS>> * Обе системы не любят CR/LF в .sh скриптах - было бы неплохо заменить
AS>> просто на LF уже в дистрибутиве.
MD> Разумеется, в репозитории на гитхабе никаких CR нет. Удали свою копию
MD> репозитория, содержащую CR, выполни команду

Да, вполне возможно, что это проблема того, кто создал и захатчил в файлэху husky-all-1.9-source-20220708.zip...

Я не пробовал получить именно с гитхаба, возможно, там всё ок.

AS>> * Hет скриптов для офлайн сборки - init_build и build.sh настойчиво
AS>> хотят гитхаб. В документации INSTALL единственной альтернативой
AS>> предлагается ручная сборка по "legacy makefiles" (но мне удалось
AS>> собрать и без них).
MD> Да, собирался написать этот раздел, но пока руки не дошли. Конечно же,
MD> можно собирать и без скриптов, и оффлайн.

MD> В каталог, где находятся все локальные копии репозиториев Husky, надо из
MD> huskybse/ скопировать huskymak.cfg для Линукса и huskymak.cfg.bsd для
MD> FreeBSD. Последний надо переименовать в huskymak.cfg. Туда же скопировать
MD> huskybse/Makefile. Запускать make/gmake надо будет в этом каталоге. Лучше
MD> всего эти действия выполнить с помощью wget и init_build как это написано
MD> в huskybse/INSTALL_ru.asciidoc.

Да, я именно так и делал, но в случае ubuntu пришлось использовать init_build , который нашёл мне правильный huskymak.cfg . По ходу, проблема в том, что я использовал для ubuntu huskymak.cfg.debian в качестве основы, а в нём, почему-то, нет PROGRAMS= и в итоге получилось "нет целей для сборки".

build.sh же до этапа сборки мне довести не удалось. Возможно, его стоит поправить, добавив возможность пропустить обновление исходников, т.е. собирать из того, что уже есть в каталогах...

MD> ${MAKE} $jobs depend && ${MAKE} $jobs

А это был корень проблемы, я долго думал, почему "нет целей для сборки" sqpack и прочего, с указанием на какие-то несуществующие .d файлы, потом внимательно почитал build.sh...

MD> Как установить собранные программы написано в в
MD> huskybse/INSTALL_ru.asciidoc. Возможно, я что-то забыл написать. Если что
MD> будет не так, пиши.

да там просто make install и всё устанавливается, куда в конфиге и прописал...

AS>> При этом, init_build, в принципе, и при
AS>> существующих исходниках (распакованных из архива) поправит вам конфиг
AS>> для сборки,
MD> init_ build надо запускать только один раз, для того, чтобы подготовить
MD> первоначальное скачивание исходников. И это написано в документации.

А ещё он найдёт правильный huskymak.cfg.

AS>> * В случае FreeBSD 13 предлагаемый компилятор clang не сработает -
AS>> сборка остановится на неисправимой ошибке в одном из файлов
AS>> исходников. Решение: использовать gcc/g++ . Решение пришлось искать в
AS>> портах более старой версии.
MD> Решение неправильное. Hадо привести кусок лога с ошибкой. Вообще-то я
MD> тестировал сборку во FreeBSD именно на 13.0, но это было какое-то время
MD> назад.

В порте, где так сделали, объяснили это несовместимостью определённой версии clang. Впрочем, я нашёл проблему. Hа той машине с FreeBSD остались инклюды от этого порта, вот он в итоге и ругался на

/usr/local/include/fidoconf/common.h:166:38: note: passing argument to parameter 'aka' here
HUSKYEXT char *aka2str(const hs_addr aka);
                                     ^
hpt/src/carbon.c:109:34: error: passing 'hs_addr *' (aka 'struct _netaddr *') to parameter of incompatible type 'hs_addr' (aka 'struct _netaddr'); remove &
          msg->netMail ? aka2str(&msg->destAddr) : "");
                                 ^~~~~~~~~~~~~~

...и прочее в том же духе. Пришлось почистить инклюды из /usr/local, сделать заново gmake depend и вот тогда собрался и с помощью clang.

В общем, логика поиска инклюдов сначала в системных путях, и только потом в локальных каталогах - то ещё извращение, зачем так делать...

А gcc, видимо, делает наоборот, т.е. более логичным путём, поэтому собиралось и так.

AS>> * В общем мейкфайле сборки нет рецепта для hptutil. Или он больше не
AS>> поддерживается? Отдельно собирать не пробовал.
MD> Я не хотел включать hptutil, потому что когда-то тут были крики, что эта
MD> программа портит базы. Hо, пожалуй, надо включить, чтобы получить
MD> подробное сообщение об ошибке. :)

Hу тут или объявить неподдерживаемой, или давать собрать, ведь в виндовых экзешниках оно есть...

--- Neon BBS Line 2, 570-57-80, 20:30-06:30. [bbs.ncc.org.ua]
* Origin: Neon_#2, Kiev, Ukraine (2:463/877)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.071706 секунды