Показать сообщение отдельно
  #1  
Старый 12.06.2017, 18:40
Vitaliy Aksyonov
Guest
 
Сообщений: n/a
По умолчанию [FWD] htick не собирается на CentOS 6.5

Vitaliy Aksyonov написал(а) к All в Jun 17 17:23:30 по местному времени:

=============================================================================
* Переслал Vitaliy Aksyonov (2:463/3232)
* Обл. : ru.ftn.develop (ru.ftn.develop)
* От : Slava Petrov, 2:5053/54.17 (11 июн 17 15:50)
* Кому : All
* Тема : htick не собирается на CentOS 6.5
=============================================================================
Good ${greeting_time}, All!

Сабж однако. Собирал фидо-комплект по рекомендациям тов. Гремлина, все работало
отлично, за исключением того, что файлы из файлэх оставались всегда в инбаунде.
Поначалу это не напрягало, потом таки надоело. Оказалось, что не установлен
htick. Попробовал собрать rpm пакет и установить по аналогии -- и наткнулся на
ошибку.

Сделано следующее:

$ wget 'http://husky.cvs.sf.net/viewvc/husky/htick/?view=tar' -O htick.tar.gz

$ rpmbuild -ta htick.tar.gz

И вот в процессе получаю ошибку:

+ make
gcc -c -s -O3 -fomit-frame-pointer -fstrength-reduce -fPIC -Ih -I/usr/include
-W all -DUNIX src/htick.c
In file included from src/htick.c:82:
h/global.h:86: error: expected '=', ',', ';', 'asm' or '_attribute_' before
'cmRelink'
src/htick.c: In function 'processCommandLine':
src/htick.c:331: error: 'cmRelink' undeclared (first use in this function)
src/htick.c:331: error: (Each undeclared identifier is reported only once
src/htick.c:331: error: for each function it appears in.)
src/htick.c:331: error: 'modeRelink' undeclared (first use in this function)
src/htick.c:364: error: 'modeResubsribeWithFile' undeclared (first use in this
function)

Ну и так далее. Я ненастоящий сишник, но провел небольшое исследование. В
global.h имеется декларация переменной:

$ cat htick/h/global.h | grep cmRelink
extern e_relinkType cmRelink;

Тип этот в самом хедере не определен, но есть инклюд:

#include <fidoconf/fidoconf.h>

В этом хедере определяются аналогичные типы:

$ cat fidoconf.h | grep Type
typedef enum pollType {PKT, REQUEST, FLOFILE} e_pollType;
int areaType; / ECНOAREA, FILEAREA /
int msgbType; / MSGTYPESDM or MSGTYPESQUISН or /
typedef enum carbonType {ctto, ct_from, ct_kludge, ct_subject, ctgroup,
ctfromarea, ct_msgtext, ct_addr} ecarbonType;
e_carbonType ctype;
typedef enum filelistType { flDir, flGlobal, flDirList } e_filelistType;
e_filelistType flType;

И типа e_relinkType там нет вообще!

Таким образом, если я правильно понимаю, собрать htick вообще невозможно без
серьезного патчинга. Поэтому вопроса два:

1. Реально ли пропатчить htick таким образом, чтобы он все-таки собрался? Мне,
как пойнту, фактически нужна от него только функция toss.

2. Если кто-то уже это делал, не поделится ли он патченными исходниками или
rpm-пакетом?

Конечно, можно написать свой мини-тоссер tic-файлов, структура-то примитивная.
Но хотелось бы воспользоваться стандартными средствами.

Slava
... god@universe:~ # cvs up && make world
-+- GoldED+/LNX-1.1.5-b20130910 (Linux 2.6.32-431.1.2.0.1.el6.i686 iF6M14)
+ Origin: cunctat0r station (2:5053/54.17)
=============================================================================

Привет, All!

Похоже, что это изменение делал:
revision 1.32 by dukelsky, Sun Feb 12 17:11:19 2017 UTC

Интересно, что у меня на Debian 8 собирается. Хотя, конечно, этот enum нигде не определен. Может он и был, но его потом выпилили. Было бы неплохо разобраться.

С наилучшими пожеланиями, Vitaliy.

... 10.0 times 0.10 is hardly ever 1.00.
--- GoldED+/LNX 1.1.5-b20160201
Ответить с цитированием