
Pavel
01.09.2017
09:54:40
На libasync

Dmitry
01.09.2017
09:56:41
А не мог бы глянуть может у меня в коде какой-то ад есть?

Pavel
01.09.2017
09:59:11
Сходу не скажу, может на выходных гляну

Dmitry
01.09.2017
10:10:02
Просто под виндой проблем не было...

Google

Pavel
01.09.2017
10:11:42
Тогда попробуй действительно сменить драйвер, дело может быть в нем

Maxim
01.09.2017
10:12:20
судя по логу проблема действительно где-то в драйвере libevent
а разве сейчас вайб не libasync по умолчанию использует?

Pavel
01.09.2017
10:14:24
вроде нет
надо там смотреть version флаги

Dmitry
01.09.2017
10:20:41
А используемая по дефолту либа от ОС не зависит?

Pavel
01.09.2017
10:22:48
может зависеть наверно
libevent это вроде как только линуксовая абстракция? А libasync заявляется как универсальная мультисистемная

Dmitry
01.09.2017
10:33:42
а как их поменять? я что-то нагуглить не могу
libeven она вообще на чем написана? Это врапер? Не нативная?

Maxim
01.09.2017
10:41:39
libevent на си написана

Pavel
01.09.2017
10:41:47
да бинбинг к libevent сишной

Google

Oleg
01.09.2017
10:51:25
как мы поняли тут не в совсем в драйвере дело
как бы по теореме эскобара
шо то шо то используется не правильно и epoll каким-то образом дохнет
https://github.com/rejectedsoftware/vibe.d/issues/1888#issuecomment-322001480
а Людвигу как бы пофигу, что основа его библиотеки как-то жидко написана
эту проблему отлавливают все в разных местах...

Dmitry
01.09.2017
10:59:56
но на винде не libevent?

Oleg
01.09.2017
11:01:02
я не помню, вроде на винде libevent тоже может
в windows он select использует
но vibe может выбирать не его на винде

Dmitry
01.09.2017
11:02:05
select это либа?

Oleg
01.09.2017
11:02:27
это системный вызов по всей видимости

Dmitry
01.09.2017
11:58:43
"Error: can't run '\bin\link.exe', check PATH"
студия вроде стоит
короче переставил dmd вроде теперь компилится
видимо он сам что-то там проверяет и у себя пути прописывает
хотя к теме про линковщик это да ... это боль
мля... вот как почему приложение автозавершается то...
мля ... Людвиг....

Google

Dmitry
01.09.2017
12:40:12
Короче 0.8.0 работает нормально
а 0.8.1 автозавершается
т.е. у него ивентлуп не стартует под виндой

Pavel
01.09.2017
12:42:34
ну останься на 0.8.0 тогда

Dmitry
01.09.2017
12:45:43
хотя глюк какой-то плавающий что-ли или я понять не могу. щас с тестовым проектом разбираюсь
ой тут глюкодром то... тут все со всем не совместимо. Попробуйте ради интеерса через LDC2 собрать вайб последний и зайти на его тестовую страницу которую dub генерит в дефолтном шаблоне:
dub init --type-vibe.d
короче вот как все выглядит https://user-images.githubusercontent.com/6514326/29972871-52e29db0-8f36-11e7-945d-6c2af48afd82.gif

Pavel
01.09.2017
13:58:24
вижу уже в libasync assertion error

Dmitry
01.09.2017
13:58:41
но такое только под LDC2
под dmd другие приколы)
под dmd 0.8.1 собирается только в 64-битном варианте
а 0.8.0 можно в 32 битном собрать)

Dmitry
01.09.2017
13:59:32
https://github.com/rejectedsoftware/vibe.d/issues/1910

Pavel
01.09.2017
14:00:28
так а ты продукт делаешь или играешься? ну собери под dmd и пусть работает

Dmitry
01.09.2017
14:00:54
началось все с того, что я под Linux попытался все завести...
там с либивентом все падать начало
Вот тут написано для dub.json как либу поменять, как тоже самое сделать для dub.sdl?
https://github.com/etcimon/libasync

Pavel
01.09.2017
14:05:27
"versions": ["VibeNoSSL", "VibeManualMemoryManagement", "VibeLibevDriver"],

Dmitry
01.09.2017
14:05:59
точно VibeLibevDriver ?

Pavel
01.09.2017
14:06:11
А, это пример просто

Google

Pavel
01.09.2017
14:06:19
Впиши туда VibeLibasyncDriver

Dmitry
01.09.2017
14:38:04
Не могли бы кто нить проверить вот эту тему и отписаться https://github.com/rejectedsoftware/vibe.d/issues/1909
А то у людвига все работает. там архив выложен уже готовый.
А на то что libevent под Linux не работает кому раппорты слать?
кому не лень сделайте перевод для каких нить ЛОРов
http://forum.dlang.org/thread/oobpf2$14c1$1@digitalmars.com
я тут с вайбом маюсь дальше

Dmitry
01.09.2017
15:02:05
Что сишники, что крестовики свирепствуют.

Dmitry
01.09.2017
15:02:54
Там все обсирают в том числе плюсы

Pavel
01.09.2017
15:03:53
Ха помню те эпичные темы по 20 страниц

qwerty
01.09.2017
15:07:33
Пока в devdocs принимают PR уже новая версия компилятора вышла >_<

Admin
ERROR: S client not available

Dmitry
01.09.2017
15:29:23
Так, а только у меня на линукс с либивентом проблемы?
Может кто еще проверить?

Oleg
01.09.2017
17:06:31
ребят, кто понял смысл вот этой строки
12. Struct deconstructors
https://dlang.org/spec/betterc.html#consequences

Pavel
01.09.2017
17:14:13
может это просто так называются деструкторы?

Oleg
01.09.2017
17:21:20
почему деструкторы структур не будут работать в betterC?
а точнее почему Брайт так думает? ?
потому что они работают))))

Google

Pavel
01.09.2017
17:22:17
Не знаю, наверно надо прыгать куда-нибудь со стека в неугодное место, что несовместимо с философией си


Oleg
01.09.2017
17:22:58
хм, не думаю что там прыгать куда-то надо
просто в конце видимости переменной вставляешь вызов деструктора с помощью компилятора
и всё
import core.stdc.stdio;
extern(C):
struct Test
{
int value;
this(int v)
{
value = v;
printf("set value to %d\n", v);
}
~this()
{
printf("destructor, value is %d\n", value);
}
}
void foo()
{
auto a = Test(12);
a.value = 24;
}
void main()
{
printf("one\n");
foo();
printf("two\n");
}
имеет вывод
one
set value to 12
destructor, value is 24
two
dmd —version
DMD64 D Compiler v2.076.0-dirty
собирал с -betterC естественно
но вот руками вызвать деструктор не удалось из betterC кода, что мне кажется странным
ну тоесть руками он вызывается при обычной сборке, а при betterC говорит что не может слинковать
raiibetterc.o:(.data.DW.ref.__dmd_personality_v0+0x0): undefined reference to `__dmd_personality_v0'
collect2: error: ld returned 1 exit status


Pavel
01.09.2017
17:30:36
ну вот значит адрес вызова может вырезается
для оптимальности или еще чего то

Oleg
01.09.2017
17:31:24
а в документации говорится, что работать не будет
а "won't work "я подразумеваю что не руками не сможешь вызвать, а вообще вызываться не будет
вот либо кто-то где-то наебался, либо я что-то не то понял
ну и соответственно сначала нужно думать, что сам что-то не понял, вот и спрашиваю, что могло бы значить что "не будут работать деструкторы структур" если они работают
и как бы хорошо что работают, без этого было бы совсем грустно

Dmitry
02.09.2017
11:02:34
Просто под Виндой все было стабильно. На Debian 8.5 рушится
в лог вообще ничего не записывается

Pavel
02.09.2017
11:36:55
Могу вечером посмотреть если даш доступ к серверу

Dmitry
02.09.2017
11:38:06
дам доступ) только я закономерностей не вижу

Pavel
02.09.2017
11:38:13