Αλεχ
и не нашел там метода который скомпилен с #[cfg(feature="std")]
Αλεχ
компилятор
Αλεχ
есть метод который #[cfg(feature="std")]
Αλεχ
есть if cfg!(feature="std")
Αλεχ
и они вместе не работают
Αλεχ
если проще: он заходит в ветку if false
Cuno
Работают же
Αλεχ
нет
Αλεχ
ошибка выше
Cuno
если feature=std выставлено
Αλεχ
а если нет
Cuno
оно не компилируется если features=std НЕ выставлено
Αλεχ
то должна отработать ветка else в cfg1
Cuno
это тебе не constexpr if
Cuno
if-else "работает" в рантайме
Cuno
чтобы ему в рантайме отработать код должен тайпчекаться и компилироваться
Αλεχ
а
Αλεχ
бля
Αλεχ
да ты прав
Berkus
эквивалентные
нет, код с атрибутом вообще не существуюет если в cfg(x) x == false
Berkus
а ветки в ифе существуют в любом случае
Berkus
если проще: он заходит в ветку if false
нет, не "заходит", он делает if false { expr } else { expr } и один из expr не тайпчекается
Αλεχ
чет я тупанул
Safort
Bceм привет! У меня вопрос, есть инфа на сколько используется Rust в Гейм деве? А то там балом заправляет C++ (все топовые движки на нём, всякие OpenGL, Vulkan api и пр.)
Пока очень не часто. Новости тут https://www.reddit.com/r/rust_gamedev/ Из относительно сложных в плане графики проектов можно выделить Shar https://twitter.com/BringerShar Из любопытных граф. движков - https://github.com/three-rs/three И тут и в гиттере есть чуваки, которые занимаются этими проектами, так что, думаю, смогут рассказать про них, если что.
Oleh
Пытаюсь сбилдить проект, говорит не установлен zmq, поставил, добавил PKG_CONFIG_PATH и путь к ZeroMQ 3.2.4\lib, не работает. Подскажите как правильно поставить либу на винде, чтобы это работало, на линуксе это делается в одну строчку $ sudo apt install libzmq3-dev error: failed to run custom build command for `zmq-sys v0.8.2 (https://github.com/erickt/rust-zmq?branch=release/v0.8#9df2532d)`
Αλεχ
конкуренты-с
Αλεχ
error: failed to run custom build command for `zmq-sys v0.8.2 (https://github.com/erickt/rust-zmq?branch=release/v0.8#9df2532d)`
Αλεχ
охуенная ошибка
Αλεχ
ты бы еще написал просто error)
Safort
конкуренты-с
Не совсем. https://gitter.im/ruRust/gamedev хоть и классный раздел с интересными чуваками, но он меньше, чем реддитовский и менее новостной.
Oleh
ты бы еще написал просто error)
--- stderr thread 'main' panicked at 'Unable to locate libzmq: `"pkg-config" "--msvc-syntax" "--libs" "--cflags" "libzmq >= 3.2"` did not exit successfully: exit code: 1 --- stderr Package libzmq was not found in the pkg-config search path. Perhaps you should add the directory containing `libzmq.pc' to the PKG_CONFIG_PATH environment variable No package 'libzmq' found
Boris
может libzmq не установлен?..
Boris
я на rust только 2 строчки написал, мимо интересуюсь, но все же)))
Oleh
та в том то и дело, что поставил, но файла libzmq.pc у меня нет, мб на винде он как-то по-другому называется и мб я неправильно либу подключаю и он её не видит, инфы в сети не нашел как её подключить
Амир
Есть модераторы в сети? Нужно забанить участника
Boris
обычно должна быть директория include в либе и ее в PKG_CONFIG_PATH дописать. смотрел что в папке, где libzmq расположен?
Roma
чот на расте использовать биндинги к zmq как-то тухловато
Boris
в include находятся 2 заголовочных файла: zmq и zmq_utils
советую попробовать совет предыдущего автора, так можно сутки провести в поисках. мало ли на винде хедер по другому назвывается:)
Oleh
Оки, буду долбиться ) Всем спасибо за ответы!
Roma
а нативную реализацию не пробовал? https://github.com/zeromq/zmq.rs такое что-нибудь
(прямо эта либка правда, пишут, under construction, но может чот ещё есть)
Boris
https://crates.rs/crates/zmq-rs это может поможет, пишут с виндой ок, хотя и релизов мало
Roma
да тоже биндинги
Boris
да тоже биндинги
к чистому C не грех биндиться=)
Oleh
ну может она хоть билдтиться будет в отличие от предыдущих)
Roma
к чистому C не грех биндиться=)
но это nanomsg нужен тогда, zmq то на плюсах
Roma
https://docs.rs/zmtp/0.6.0/zmtp/
Roma
вот в таком духе, кмк, лучше -- протокол просто реализовать и потом самому рулить остальным
Roma
а то в zmq либке там бэкграунд треды были и всё такое
Boris
но это nanomsg нужен тогда, zmq то на плюсах
ты прав черт возьми, я обманывал себя пару раз))
Roma
пока мейнтенят сишный врапер для биндингов хорошо конечно, но возьмут завтра и перестанут (как мозила со спайдерманки сделали )
Boris
и вроде nanomsg – это от контрибутора/автора zmq, упрощенная и не ограниченная одним контекстом
Alexander
Вот, кстати только хотел спросить: @mexus тут ругал nano/zero . А какие альтернативы? Кмк никаких.
Денис
Если ресурсы позволяют, лучше юзать полноценный mq какой-нибудь
Денис
А если наоборот, нужно что-то лёгкое, то имхо zeromq не сильно лучше сырых сокетов
Alexander
Ну при таком подходе я б вообще через mongodb подписывался бы - два в одном.
Денис
ааа, ты всё ту задачу решаешь об оповещениях
Денис
Ну и это, имхо, сырые сокеты -- вполне себе альтернатива zeromq)
Alexander
ааа, ты всё ту задачу решаешь об оповещениях
Да не особо. Там все работает, но вот через монгу ещё сделал - тоже работает и удобнее конечно. Вопрос что для Раста монги нет
Alexander
Ну и это, имхо, сырые сокеты -- вполне себе альтернатива zeromq)
Ну вот и ключевое, я хз зачем сокеты, когда можно взять nanomsg
Alexander
Разве что интересно время с буферами провести.
Денис
Ну вот и ключевое, я хз зачем сокеты, когда можно взять nanomsg
nanomzg я так и не поюзал, поэтому не могу сказать, но могу сказать (попозже), почему может быть лучше взять сырой сокет, чем zmq :)
Alexander
Почему?
Денис
Разве что интересно время с буферами провести.
а ты уверен, что не проведёшь его с наномсг?)
კაცი
Змкью разве не сдохло?
Alexander
Ну вообще всё в пару строк уместилось - send / recv. Ну пока не проводится, оно быстро взлетело.
Alexander
Мало того я получил бесплатную переподписать и тд. И броладкаст если надо.
Alexander
И это всё сменой одного флага.
Alexander
Я хз сколько надо с сокетами веселиться для аналогичного.
Денис
ну хорошо, если оно в наномсг работает из коробки, потому что в зеромк оно НЕ работает
Денис
publisher-subscribers
Roma
Работает
Денис
лол
Roma
Даж паб сайд фильтеринг вроде впиливали