libastral не работает (а так хотелось в астрал выйти...)

Здесь выкладываем всё! Смешные картинки, истории, анекдоты, всё, что вызывает у вас смех.

Модератор: Модераторы разделов

Аватара пользователя
.Serj.
Сообщения: 127
ОС: Gentoo, Win7

libastral не работает

Сообщение .Serj. »

Все собралось, а работать не хочет:

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

./astral_test: error while loading shared libraries:
libastral.so: cannot open shared object file: No such file or directory

З.Ы. страница проекта.
Спасибо сказали:
Flaming
Сообщения: 2579

Re: libastral не работает

Сообщение Flaming »

У меня тоже не работает. :( Где он его ищет, этот файл? По умолчанию ставится в /usr/local/lib, а где он ещё ищет?

Запихнул вручную симлинк на этот файл в /usr/lib, как будто бы помогло, но теперь даёт ошибку сегментирования. :( Что на нафик?
Спасибо сказали:
Аватара пользователя
NekoExMachina
Сообщения: 485
ОС: Кошерная.

Re: libastral не работает

Сообщение NekoExMachina »

Вот и ответ на соседнюю можно сказать тему о телепатах. Телепатить не получается - либастрал сегфолтиться.. Т_________Т
Вообще - зря вы в юмор, тема довольно серьезная. В программы надо...
На форуме больше не появляюсь.
Высокопарность и надменность довела.
OpenBSD-current+scrotwm*1 (acer aspire one 531h)
FreeBSD 8.1+kde3*1 (desktop)
FreeBSD 8.1+scrotwm*1 (hp530)
FreeBSD 9.0+dwm*1 (old toshiba satellite)

Спасибо сказали:
Upliner
Сообщения: 67
ОС: openSUSE 11 / Debian Lenny

Re: libastral не работает

Сообщение Upliner »

У меня вроде получилось:

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

upliner@nbk$ gcc astral_test.c libastral.c  -o astral_test1
upliner@nbk$ ./astral_test1
1.      Aqtmbwdhxynbbkntan hfxrpvcyd r
         sunt lowgniwopd eg jrlyq rfcl
        uxq snsmpl sjwb edm raityvct u
        lxfqdcm swnyufqc ntupmjmx qmpg
        buza. Pzhq xevlc pia ndbdvmxki
        q gznyd bpdqigeu pjmsob b fyfv
        fltdzn tuqadduqi blgh qxpdekfc
         o ccax ybopnereyv mtyfulc kns
        e uqh prx wefptfen xmmvcftc yt
        xn kof o ovr zhdsfnfx.
От Кузбаса и до Затулинки, от вершин до глубиннейших руд
Анархисты Сибирской Республики нас к предельной свободе ведут
Спасибо сказали:
Flaming
Сообщения: 2579

Re: libastral не работает

Сообщение Flaming »

Upliner, у меня такая фигня тоже выскакивает, но не всегда, чаще сегфолтится.
И всё-таки, что это такое? Где АСТРАЛ?
Спасибо сказали:
Аватара пользователя
.Serj.
Сообщения: 127
ОС: Gentoo, Win7

Re: libastral не работает

Сообщение .Serj. »

Upliner писал(а):
28.09.2008 14:56
У меня вроде получилось:

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

upliner@nbk$ gcc astral_test.c libastral.c  -o astral_test1
upliner@nbk$ ./astral_test1

Спасибо, заработало, правда сегфолтится через раз :)
Спасибо сказали:
ivan1986
Сообщения: 14
ОС: Debian sid

Re: libastral не работает

Сообщение ivan1986 »

Во первых по поводу
cannot open shared object file
ldconfig вызвать не забываем :)

Во вторых по поводу того что она сегфолтится - еще бы она не сегфолтилась,
1) там неверно задан лимит памяти - не проставили скобки в define
2) для строки забыт +1 на нулевой байт - тем самым если строка имеет длину 10, то счетчик слов сбрасывается.
3) вообще при максимальном вылезают за границы выделенного куска

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

diff -urNd libastral-0.4/libastral.c libastral-0.4_new/libastral.c
--- libastral-0.4/libastral.c    2008-07-12 11:47:50.000000000 +0400
+++ libastral-0.4_new/libastral.c    2008-10-02 01:39:43.000000000 +0400
@@ -113,7 +113,7 @@
 /* -------------------------------------------------------------------------- */
 int astral_listen_sentance(struct portal *p, char* sentance_divine) {
     int l, s_len, w_len;
-    char word_divine[LETTERS_MAX];
+    char word_divine[WORD_MAX_LENGTH];

     /* sentance-divine length in words */
     s_len = astral_rand(p->gate, p->w_min, p->w_max);
diff -urNd libastral-0.4/libastral.h libastral-0.4_new/libastral.h
--- libastral-0.4/libastral.h    2008-07-12 11:35:23.000000000 +0400
+++ libastral-0.4_new/libastral.h    2008-10-02 01:38:47.000000000 +0400
@@ -26,10 +26,10 @@
 #define PARAGRAPHS_MIN        1
 #define PARAGRAPHS_MAX        4

-#define WORD_MAX_LENGTH        LETTERS_MAX + 1
-#define SENTANCE_MAX_LENGTH    WORDS_MAX * WORD_MAX_LENGTH + 1 /* "Blah-blah-blah. " <--dot-space */
-#define PARAGRAPH_MAX_LENGTH    SENTANCES_MAX * SENTANCE_MAX_LENGTH
-#define STATEMENT_MAX_LENGTH    PARAGRAPHS_MAX + PARAGRAPHS_MAX * (PARAGRAPH_MAX_LENGTH + 2) /* 99. Foo-bar."\n\n" */
+#define WORD_MAX_LENGTH        (LETTERS_MAX + 1)
+#define SENTANCE_MAX_LENGTH    (WORDS_MAX * WORD_MAX_LENGTH + 1) /* "Blah-blah-blah. " <--dot-space */
+#define PARAGRAPH_MAX_LENGTH    (SENTANCES_MAX * SENTANCE_MAX_LENGTH + 90) /* ++ for ... */
+#define STATEMENT_MAX_LENGTH    (PARAGRAPHS_MAX * (PARAGRAPH_MAX_LENGTH)) /* 99. Foo-bar."\n\n" */

 #define WORD_STYLE_SIMPLE    0
 #define WORD_STYLE_NAME        1
Спасибо сказали: