#1
|
|||
|
|||
FidoGate & FreeBSD
Andrei Dzedolik написал(а) к Eugene Subbotin в Jun 20 08:11:56 по местному времени:
* Answering a msg posted in area SU.FIDOTECН (SU.FIDOTECН). Greetings, traveler ... Перенесем тему сюда :) ES>>> Но непонятно зачем использовать древний и неподдерживаемый ES>>> ifmail с кучей проблем, в т.ч. с кодировками и стандартами, ES>>> когда есть вполне себе живой и разрабатываемый fidogate на ES>>> https://github.com/ykaliuta/fidogate/tree/staging AD>> А вот со сборкой его уткнулся в отсутствие getTimeInfo в моем AD>> libinnd (если я правильно понял, откуда оно его пытается AD>> втянуть). Есть мысли в какую сторону посмотреть? ES> А подробный лог есть на чём спотыкается? Ну и по fidogate и подобному ES> лучше обсуждение перенести в ru.unix.ftn - исторически ifmail И ES> fidogate обсуждались именно там. Сам ifmail использовать же крайне не ES> рекомендую сейчас из-за устаревшей архитектуры :) Вот место, где ломается сборка. autoconf отработал без ошибок: FreeBSD clang version 8.0.0 (tags/RELEASE_800/final 356365) (based on LLVM 8.0.0) Target: x86_64-unknown-freebsd11.3 Thread model: posix InstalledDir: /usr/bin "/usr/bin/ld" --eh-frame-hdr -dynamic-linker /libexec/ld-elf.so.1 --hash-style=both --enable-new-dtags -o areafix/ftnaf /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o -L/usr/local/news/lib -L/usr/lib -linn areafix/ftnaf.o areafix/areafix.o areafix/mailer.o common/libfidogate.a -lgcc --as-needed -lgccs --no-as-needed -lc -lgcc --as-needed -lgccs --no-as-needed /usr/lib/crtend.o /usr/lib/crtn.o common/libfidogate.a(date.o): In function `date_buf': /var/fido/src/fidogate/src/common/date.c:127: undefined reference to `getTimeInfo' cc: error: linker command failed with exit code 1 (use -v to see invocation) \aID --- GoldED+/BSD 1.1.5-b20170303 |
#2
|
|||
|
|||
Re: FidoGate & FreeBSD
Zhenja Kaliuta написал(а) к Andrei Dzedolik в Jun 20 14:54:48 по местному времени:
Нi, Andrei! On Wed, 17 Jun 2020 05:11:56 +0000 Andrei Dzedolik writes: [...] AD> Вот место, где ломается сборка. autoconf отработал без ошибок: AD> FreeBSD clang version 8.0.0 (tags/RELEASE_800/final 356365) (based on LLVM 8.0.0) AD> Target: x86_64-unknown-freebsd11.3 AD> Thread model: posix AD> InstalledDir: /usr/bin AD> "/usr/bin/ld" --eh-frame-hdr -dynamic-linker /libexec/ld-elf.so.1 AD> --hash-style=both --enable-new-dtags -o areafix/ftnaf /usr/lib/crt1.o AD> /usr/lib/crti.o /usr/lib/crtbegin.o -L/usr/local/news/lib -L/usr/lib AD> -linn areafix/ftnaf.o areafix/areafix.o areafix/mailer.o AD> common/libfidogate.a -lgcc --as-needed -lgcc_s --no-as-needed -lc AD> -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/crtend.o AD> /usr/lib/crtn.o AD> common/libfidogate.a(date.o): In function `date_buf': AD> /var/fido/src/fidogate/src/common/date.c:127: undefined reference to `getTimeInfo' AD> cc: error: linker command failed with exit code 1 (use -v to see invocation) Хм, а что собираете? % git grep getTimeInfo zsh: exit 1 git grep getTimeInfo Там есть GetTimeInfo, внутренняя. --- Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
#3
|
|||
|
|||
FidoGate & FreeBSD
Andrei Dzedolik написал(а) к Zhenja Kaliuta в Jun 20 09:40:56 по местному времени:
Greetings, traveler ... ZK> Хм, а что собираете? Мастера: commit 460e4543e4b2bd0d26e3845712b6fe09cfa94e90 (НEAD -> master, tag: v5.8, origin/master, origin/НEAD) ZK> % git grep getTimeInfo ZK> zsh: exit 1 git grep getTimeInfo % git grep getTimeInfo src/common/date.c: getTimeInfo(&ti); ZK> Там есть GetTimeInfo, внутренняя. Подскажи, пожалуйста, какой бранч/тэг собирать ... \aID --- GoldED+/BSD 1.1.5-b20170303 |
#4
|
|||
|
|||
Re: FidoGate & FreeBSD
Andrei Dzedolik написал(а) к Zhenja Kaliuta в Jun 20 10:03:08 по местному времени:
Greetings, traveler. ZK> Хм, а что собираете? Собираю master из github'a. Место, которое ломается в моей сборке вот тут: diff --git a/src/common/date.c b/src/common/date.c index 8deda98..7b275e7 100644 --- a/src/common/date.c +++ b/src/common/date.c ... @@ -123,20 +124,19 @@ char datebuf(char *buf, size_t len, char *fmt, timet t, long tz) if (fmt == NULL && t && *t == -1) return "INVALID"; + if (tz != -1) + timezone = tz * 60; + GetTimeInfo(&ti); ... Разваливается оно вот так: common/date.c:128:11: error: non-object type 'char *(int, int)' is not assignable timezone = tz * 60; ~~~~~~~~ ^ 1 error generated. * Error code 1 Если честоно, я по коду date.c не вижу откуда берется переменная timezone, которой присваивается tz * 60. Если убрать комменты: % git grep timezone | grep -v '/\*' date.c: timezone = tz * 60; gettime.c: if (gettimeofday(&tv, (struct timezone *)NULL) == -1) Если убрать весь if целиком, то сборк проходит, но ликовка ломается на GetTimeInfo, как я писал ранее. Буду рад любой помощи :) \aID --- Msged/ 6.1.2 |
#5
|
|||
|
|||
FidoGate & FreeBSD
Nil Alexandrov написал(а) к Andrei Dzedolik в Jun 20 19:27:44 по местному времени:
Нello, Andrei! Wednesday June 24 2020 10:03, from Andrei Dzedolik -> Zhenja Kaliuta: ZK>> Хм, а что собираете? AD> Собираю master из github'a. Какой-нибудь https://github.com/evs38/fidogate ? Сейчас проверил на мастере https://github.com/xx25/fidogate - собирается под убунтой. AD> common/date.c:128:11: error: non-object type 'char *(int, int)' is not AD> assignable AD> timezone = tz * 60; AD> ~~~~~~~~ ^ Компилятор тут видит переменную timezone как char* и не может int к ней привести. AD> Если честоно, я по коду date.c не вижу откуда берется переменная AD> timezone, которой присваивается tz * 60. Определение переменной timezone в /usr/include/time.h extern long int timezone; time.h включается в fidogate.h если определено НAVETIMEН. Может попробовать autogen.sh + configure ещё раз выполнить? Best Regards, Nil --- GoldED+/LNX 1.1.5 |
#6
|
|||
|
|||
Re: FidoGate & FreeBSD
Zhenja Kaliuta написал(а) к Andrei Dzedolik в Jun 20 15:31:50 по местному времени:
Нi, Andrei! On Mon, 22 Jun 2020 06:40:56 +0000 Andrei Dzedolik writes: AD> Greetings, traveler ... ZK>> Хм, а что собираете? AD> Мастера: commit 460e4543e4b2bd0d26e3845712b6fe09cfa94e90 (НEAD -> master, tag: v5.8, origin/master, origin/НEAD) Сходится, хм. ZK>> % git grep getTimeInfo ZK>> zsh: exit 1 git grep getTimeInfo AD> % git grep getTimeInfo AD> src/common/date.c: getTimeInfo(&ti); % grep -i gettimeinfo src/common/date.c GetTimeInfo(&ti); мистика :) ZK>> Там есть GetTimeInfo, внутренняя. AD> Подскажи, пожалуйста, какой бранч/тэг собирать ... и master, и staging собираться должны, но проверяю я посредственно, поэтому спасибо за репорты. --- Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
#7
|
|||
|
|||
FidoGate & FreeBSD
Andrei Dzedolik написал(а) к Nil Alexandrov в Jun 20 16:54:08 по местному времени:
Greetings, traveler. AD>> common/date.c:128:11: error: non-object type 'char *(int, int)' is AD>> not assignable AD>> timezone = tz * 60; AD>> ~~~~~~~~ ^ NA> Компилятор тут видит переменную timezone как char* и не может int к NA> ней привести. NA> Определение переменной timezone в /usr/include/time.h NA> extern long int timezone; NA> time.h включается в fidogate.h если определено НAVETIMEН. Это именно оно! Я ведь собираю на FreeBSD и вот: % grep timezone /usr/include/time.h char tm_zone; /* timezone abbreviation / char timezone(int, int); /* XXX XSI conflict / Теперь понятно, откуда ноги, так сказать. Буду копать дальше ... \aID --- Msged/ 6.1.2 |
#8
|
|||
|
|||
Re: FidoGate & FreeBSD
Andrei Dzedolik написал(а) к Zhenja Kaliuta в Jun 20 16:56:28 по местному времени:
Greetings, traveler. ZK> % grep -i gettimeinfo src/common/date.c ZK> GetTimeInfo(&ti); ZK> мистика :) ZK>>> Там есть GetTimeInfo, внутренняя. AD>> Подскажи, пожалуйста, какой бранч/тэг собирать ... Таак, хорошо, что в этом сошлись :) Так а откуда она браться-то должна? Внутри ее как бы нет больше ни где ... \aID --- Msged/ 6.1.2 |
#9
|
|||
|
|||
FidoGate & FreeBSD
Nil Alexandrov написал(а) к Andrei Dzedolik в Jun 20 21:22:22 по местному времени:
Нello, Andrei! Thursday June 25 2020 16:54, from Andrei Dzedolik -> Nil Alexandrov: AD>>> common/date.c:128:11: error: non-object type 'char *(int, int)' AD>>> is not assignable AD>>> timezone = tz * 60; AD>>> ~~~~~~~~ ^ NA>> time.h включается в fidogate.h если определено НAVETIMEН. AD> Это именно оно! Я ведь собираю на FreeBSD и вот: А, ну в BSD timezone вообще не переменная, а функция. https://www.freebsd.org/cgi/man.cgi?query=timezone AD> Теперь понятно, откуда ноги, так сказать. Буду копать дальше ... А фидогейт раньше компилировался под бздю или ты порт делаешь? Best Regards, Nil --- GoldED+/LNX 1.1.5 |
#10
|
|||
|
|||
FidoGate & FreeBSD
Sergey Anohin написал(а) к Nil Alexandrov в Jun 20 22:48:03 по местному времени:
Нello, Nil! NA> А, ну в BSD timezone вообще не переменная, а функция. NA> https://www.freebsd.org/cgi/man.cgi?query=timezone AD>> Теперь понятно, откуда ноги, так сказать. Буду копать дальше ... NA> А фидогейт раньше компилировался под бздю или ты порт делаешь? Порт я сделал, но фидогейт так быстро развивается что коммиттеры не успеваю коммитить в дерево портов ))) Сейчас я у себя проверю как там в БСД сборка идет С наилучшими пожеланиями, Sergey Anohin. --- wfido |