LINUX.ORG.RU

Сообщения hobbit

 

Ищу интерпретатор формул для C++ с предварительным парсингом

Форум — Development

Добрый день, ЛОР.
Ищу класс/библиотеку для C++, которому можно сначала скармливать формулы с арифметическими действиями и общеупотребительными математическими функциями (тригонометрия, логарифмы, всё вот это вот), а потом прокачивать через него массив аргументов и получать результат обработки по этим формулам.
Давным-давно был неплохой класс Parser от Jos de Jong, у которого объём нужных функций был близок к идеалу. Но во-первых, в сохранившихся у меня файлах нет информации о лицензии, а актуальные файлы в интернете не находятся. Тот же автор потом написал программу SpeqMath и все открытые наработки, похоже, из Сети убрал (ну или я плохо искал). Во-вторых, оптимальность реализации у него была так себе: формула парсилась всякий раз при вычислении очередного значения.
А хотелось бы найти интерпретатор с предварительным парсингом — к примеру, в конструктор передаётся строка с формулой, тут же парсится и преобразуется в последовательность кодов операций, отдельными методами передаются дополнительные переменные, и наконец, аргумент (или даже массив аргументов) для собственно расчётов.
Есть такие библиотеки? Желательно под LGPL или вообще под пермиссивной лицензией, ибо будет использоваться в проприетарном коде (но если найду, что улучшить в самой библиотеке, патчи автору зашлю, разумеется).

P.S. Читерство в виде вызова компилятора из своей программы не предлагать.

 , , ,

hobbit
()

DeadBeef и FLAC

Форум — Multimedia

Привет, ЛОР.

Сегодня обнаружил, что после обновления манжары DeadBeef перестал проигрывать файлы FLAC. WavPack и всякие lossy играют нормально.

Описание проблемы нашлось на манжарофоруме: необновлённый по какой-то причине DeadBeef просит libFLAC.so.8, а в системе стоят уже 10 и 12.

Принудительно обновлять DeadBeef до актуальной версии мне в силу вектора его нынешнего развития мне не очень хотелось, поэтому я совершил в /usr/lib небольшое хулиганство:

ln -s libFLAC.so.12 libFLAC.so.8

Да, это грязный хак, недостойный линуксоида, блюдущего систему в чистоте, и от хорошей жизни такое не делают. Но FLAC после этого стал проигрываться нормально. Без ломающих (возможно) обновлений.

Рекомендовать этот путь никому не буду, но вдруг кому-то пригодится. На будущее, возможно, всё-таки стоит смотреть альтернативы говядине, например, QMMP с simple ui (как минимум три человека на ЛОРе свидетельствуют, что полёт нормальный).

 , , ,

hobbit
()

Сколько оперативной памяти установлено на ваш основной личный ПК/ноутбук/моноблок?

Голосования — Голосования

Привет, ЛОР.

Опросы про дисковое хранилище на ЛОРе были относительно недавно (раз, два), а вот про ОЗУ давно не говорили. А тема актуальная, особенно при обсуждение тяжеловесных фреймворков и тому подобного.

Напоминаю, что в отличие от HDD/SSD, объём ОЗУ обычно указывается не в десятичных, а в двоичных единицах (1 ГБ (ГиБ) = 1024 МБ). И поскольку техника у людей очень-очень разная, варианты я решил расставить по логарифмической шкале.

Если у вас есть и ПК, и ноутбук, выбирайте основную систему, которой пользуйтесь чаще.

  1. от 16 до 31 ГБ 358 (38%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. от 32 до 63 ГБ 210 (22%)

    *******************************************************************************************************************************************************************************************

  3. от 8 до 15 ГБ 195 (21%)

    ******************************************************************************************************************************************************************************

  4. от 64 до 127 ГБ 70 (7%)

    **************************************************************

  5. от 4 до 7 ГБ 67 (7%)

    ***********************************************************

  6. от 128 до 255 ГБ 11 (1%)

    *********

  7. от 2 до 3 ГБ 10 (1%)

    ********

  8. у меня нет личного ПК/ноутбука/моноблока 7 (1%)

    ******

  9. не знаю 6 (1%)

    *****

  10. 256 ГБ и более 4 (0%)

    ***

  11. от 0 до 255 МБ 3 (0%)

    **

  12. от 512 МБ до 1023 МБ 3 (0%)

    **

  13. от 256 до 511 МБ 1 (0%)

  14. от 1 до 1.5 ГБ 1 (0%)

Всего голосов: 946

 

hobbit
()

Выпуск Qt 6.4

Новости — Разработка
Группа Разработка

Компания Qt Company опубликовала релиз фреймворка Qt 6.4, в котором продолжена работа по стабилизации и наращиванию функциональности ветки Qt 6. В Qt 6.4 обеспечена поддержка платформ Windows 10+, macOS 10.15+, Linux (Ubuntu 20.04, CentOS 8.2, openSUSE 15.3, SUSE 15 SP2), iOS 14+, Android 6+ (API 23+), webOS, WebAssembly, INTEGRITY и QNX. Исходные тексты компонентов Qt поставляются под лицензиями LGPLv3 и GPLv2.

( читать дальше... )

>>> Подробности на портале opennet.ru

 ,

hobbit
()

Как нам оформить опрос про оперативную память

Форум — Linux-org-ru

Привет, ЛОР.

Вот он, лежит в неподтверждённых. Пункты выглядят, как

4 ГиБ <= у меня < 8 ГиБ
8 ГиБ <= у меня < 16 ГиБ

Как выяснилось в комментариях, не меньше двух человек не увидели разницы между <= и <. Кроме того, неприятие вызвали сами наименования ГиБ и Миб, несмотря на то, что они приняты МЭК и являются частью IEC 80000-13:2008 (в России — ГОСТ Р МЭК 80000-13—2016, раздел 4).

Можно заменить формулировки на что-то вроде

от 4 ГБ (включительно) до 8 ГБ (исключительно)
от 8 ГБ (включительно) до 16 ГБ (исключительно)

Но хотелось бы собрать побольше мнений на эту тему. Я считаю первый вариант максимально точным.

Уже неоднократно были случаи, когда опрос висит в неподтверждённых больше месяца, и всех всё устраивает, а после подтверждения начинаются вопросы «почему не хватает того и этого». Давайте прервём эту традицию и обсудим формулировки в форуме, в который, как я понимаю, заглядывают чаще, чем в неподтверждённые.

Итак, спорных моментов два:

  1. какие наименования единиц использовать?
  2. как обозначать границы диапазонов, знаками или словами?

P.S. Третий вариант, компромиссный:

8 ГБ ≤ x < 16 ГБ
16 ГБ ≤ x < 32 ГБ

Сейчас склоняюсь к нему…

 

hobbit
()

Manjaro не обновляется

Форум — Desktop

Добрый вечер, ЛОР.

Manjaro KDE. Спохватился я, что система, которая раньше запрашивала обновления раз в несколько дней, молчит как партизан.

Графическая обновлялка пишет «Ваша система актуальна» и говорит, что последнее обновление было 5 сентября.

Запускаю sudo pacman -Syu. Он предлагает заменить kwayland-server на extra/kwin, steam-manjaro на multilib/steam, wxgtk-common на extra/wxwidgets-common, wxgtk3 на extra/wxwidgets-gtk3. Я как Швейк на всё соглашаюсь, после чего он выкатывает список на 685 пакетов, соглашаюсь. Он качает по 1-2 пакета, после чего вываливается с криком:

ошибка: curl returned error 12 from transfer
предупреждение: не удалось получить некоторые файлы
ошибка: не удалось завершить транзакцию (непредвиденная ошибка)
Обнаружены ошибки, пакеты не обновлены.

И так несколько раз. Что это может быть?

 ,

hobbit
()

О дружбе инсталляторов и загрузчиков

Форум — Linux-install

Подумалось…

Дистрибутивов много. Программ их инсталляции тоже. А вот есть ли в каких-нибудь дистрибутивах такой инсталлятор, который при обнаружении уже установленного GRUB (или другого универсального загрузчика) предлагал бы как один из вариантов просто добавить себя туда?

Схожий вопрос по UEFI. Когда я давным-давно ставил Федору в дуалбут с виндой на UEFI-ноуте, она поставила туда свой UEFI-совместимый GRUB, уже из него вызываются и винда, и линукс. Но ведь можно, наверное, как-то просто добавиться в сам UEFI, если он не огорожен? Или нет?

Особенно это актуально, когда я хочу иметь на машине два-три разных линукса (не виртуалки, нативно).

 , ,

hobbit
()

Ищу утилиту сравнения для языков разметки

Форум — Development

Привет, ЛОР.

А есть ли в природе утилита, позволяющая сравнивать два XML-файла с игнором различий элементов и атрибутов, которые некритичны для некоторого контекста?

Пример. В файлах .ui для Qt, помимо прочего, для каждой переводимой фразы указывается источник в программе, вплоть до номера строки. Я хочу этот атрибут заигнорить, чтобы результатом диффа были только добавленные и изменённые фразы, а изменившиеся номера строк в дифф не лезли.

Есть программа xml-diff, но она не про игнор, она про сортировку атрибутов перед сравнением (что тоже бывает важным, да).

Интересует также, есть ли такие программы для JSON или YAML, например.

 , , ,

hobbit
()

Nomenus-rex 0.8.1

Новости — Open Source
Группа Open Source

Nomenus-rex — это консольная утилита для массового переименования файлов. Настраивается с помощью простого конфигурационного файла.

Новое в версии 0.8.1:

  • добавлен ключ -l, подавляющий вывод текстовой информации (не влияет на запросы на подтверждение обработки файлов и сообщения об ошибках);
  • добавлен ключ -p, ограничивающий количество выводимых биекций (пар «оригинальный-переименованный»);
  • расширен объём выводимой информации (объём файлов, потраченное время);
  • проведён небольшой рефакторинг кода.

Поскольку последняя анонсированная на ЛОРе версия nomenus-rex имела номер 0.6.2, стоит добавить, что в версии 0.8.0 было добавлено правило exec для вызова внешних программ, в версии 0.7.0 — правило «File creation time» (по аналогии с Date).

Программа написана на C++ и распространяется на условиях GPL 3.0.

>>> Подробности (GitHub)

 ,

hobbit
()

Благодарность за починенный Midnight Commander

Форум — Talks

День добрый.

Недавно в мои руки в очередной раз попал древний дистрибутив с легаси-системы, где в mc был поломан Shift+F6: вместо переименования файла с использованием старого имени в качестве образца mc просто предлагал его удалить. Я всегда думал, что это криворукость создателей дистрибутива, однако на сей раз решил погуглить, и оказалось, что в 2011 году (да-с, и с такими артефактами приходится работать) проблема была вполне известной, а работающее решение на ЛОРе опубликовал @ananas:

[история успеха?] shift+f5 и shift+f6

Я попробовал — заработало! И даже ссылка на pastebin за 11 лет не протухла. И автор решения до сих пор заглядывает на ЛОР, что тоже радует.

@ananas, огромное спасибо!

Перемещено hobbit из desktop

 ,

hobbit
()

Раздел со статьями: возрождение реально?

Форум — Linux-org-ru

Добрый день.
Как помнят старожилы, когда-то на ЛОРе был целый раздел с русской документацией. Потом эта документация безвозвратно устарела и в конце концов раздел с сайта исчез.
А идея была хорошая. Но если её сейчас воскрешать — вопрос будет тот же. Есть среди ЛОРовцев в 2022 году люди, готовые писать статьи для сайта, и кому есть чем поделиться?

P.S. Если что, этот вопрос — пока что сугубо моя личная инициатива, с Макскомом и кем бы то ни было ещё не согласованная (но предполагаю, что если я с ним на эту тему заговорю, он первым делом спросит «А что выкладывать-то будем»?).

 

hobbit
()

Можно ли получить новый g++ с библиотекой на старой системе?

Форум — Development

Привет, ЛОР.

Тут народ хочет писать, компилировать и использовать новейший плюсовый код (включая модули из C++20 и u32string) на двух сильно старых системах. Одна на базе Debian Wheezy, другая на CentOS 7.

Можно ли как-то собрать под эти системы (особенно под дебиан интересно, с центосом опционально, но тоже желательно) современный наисвежайший g++ с современной же плюсовой стандартной библиотекой? Ребята осознают, что задача нетривиальная, и готовы некоторое время потрахаться, главное, чтобы результат получить.

Нет, сертификации там никакой нет (это первое, что я у них спросил), сторонние исходники использовать можно. Единственное ограничение — не ломать и не удалять уже установленные пакеты. Т.е. новый gcc надо собрать так, чтобы он мог вызываться в качестве альтернативы к существующему (через /etc/alternatives, например).

Задача реальна и если да, то КАК?

 , ,

hobbit
()

SANE вешается на HP C4283

Форум — Linux-hardware

Добрый вечер, ЛОР.
Довольно долгое время я успешно сканировал на сабжевом МФУ из линукса, причём на разных дистрибутивах. Но с какого-то момента xsane plugin из gimp начал зависать, да так, что даже kill-ом снимается не сразу.

Та же картина при попытке вызова scanimage -L.

С целью исключить железячную проблему я подключил МФУ к ноутбуку с Windows 8… и всё прекрасно сканируется: и фирменной HPшной программой, и даже mspaint-ом.

Система: Manjaro KDE.
hplip-1:3.22.4-1
sane: 1.1.1-1
xsane-gimp: 0.999-5
gimp: 2.10.30-3

Куда копать?

 , ,

hobbit
()

С Днём Победы!

Форум — Talks

77 лет назад закончилась самая кровопролитная война в истории. Помянем тех, кто погиб, защищая мир от нацизма.

За мирное небо!

P.S. Пожалуйста, не забывайте, что День Победы — это историческое событие, память наших дедов и прадедов. Политические обсуждения будут удаляться. Не исключаю, что в течение дня комментирование будет несколько раз закрываться и открываться.

 

hobbit
()

Добыть RAW без дорогой фотовидеотехники

Форум — Multimedia

Добрый вечер, ЛОР.

Я хочу самостоятельно поэкспериментировать с разными видеокодеками (читать про чужие тесты хорошо, но свои получать интереснее). Вот только дорогой техники под рукой нет, а использовать в качестве «несжатого» видео то, что на самом деле разжато, например, из H.264, мне кажется, не совсем правильно.

Есть ли способ как-то снимать видео несжатое или сжатое в lossless, с камеры обычного андроид-смартфона? Я в понимаю, что оно будет офигенного объёма (придётся работать короткими кусками) и скорее всего так себе качества. Но в данном случае меня волнует не качество ради качества, волнует, чтобы разные кодеки были в равных стартовых условиях. Подсовывать кодеру на вход искусственно синтезированные картинки, которые обсуждают в соседней теме, в данном случае тоже не хочется, хочется, чтобы видео было реальным, пусть и коротким.

Есть такое? Может, какая-то программа, работающая с API камеры на низком уровне (или API камеры такой возможности в принципе не даёт)?

Линукс тут при том, что 1) в конечном счёте то, чего я хочу, это не более чем материал для работы с тем же ffmpeg и другим любимым линукс-софтом; 2) андроид таки линукс, хоть и не GNU.

 , , ,

hobbit
()

Совместимость формул LO->MSO

Форум — Desktop

Привет, ЛОР.
У меня возникла необходимость оперативно сделать текст с формулами и передать по электронной почте другому человеку. Я помню, что раньше у либреофиса с майкрософтом по формулам была принципиальная несовместимость. Как обстоят дела сейчас?
Там, где я сейчас, MSO у меня нет, только либра (ещё латех, но в данном случае он исключён, ибо человеческий фактор на приёмном конце). Поэтому проверить заранее не могу, надеюсь только на помощь форума.
Конкретных вопросов три:

  1. Поймёт ли MS Word (скорее всего, 2013) формулы из LO Writer 7.1.1.2?
  2. Если нет — поможет ли мне обновление LO до последнего 7.3.1, или с формулами там осталось то же, что было в 7.1.1.2?
  3. Есть ли в разрезе этой совместимости принципиальная разница, сохранять ли в DOC или DOCX? А может, внезапно, ODT поможет, последние мсофисы же умеют его читать, хоть и весьма криво…

В тему призывается @Kompilainenn (особенно по второму пункту, но вообще по всем).

 ,

hobbit
()

Несколько таймеров из setitimer

Форум — Development

Добрый день, ЛОР.

Понадобился мне таймер повышенной точности (кутешный в линуксе отрабатывает только с миллисекундной, в винде и того хуже, но винда меня сейчас, по счастью, не интересует). Смотрю в сторону setitimer().

Я правильно понимаю, что таймер типа ITIMER_REAL в программе можно создать только один? Никаких хэндлов и прочих идентификаторов эта функция не возвращает.

То есть, если таймеров нужно несколько, надо:

  • написать один обработчик SIGALRM;
  • вызвать setitimer(), в качестве периода брать НОД периодов нужных таймеров;
  • нужные субобработчики дёргать из него в зависимости от номера тика;
  • по окончании работы вызвать setitimer() с нулевым интервалом.

Или я что-то не понимаю / усложняю?

 ,

hobbit
()

Как сохранять файл на прежнее место

Форум — Desktop

Привет, ЛОР.

Передо мной время от времени возникает весьма ненормальная и извращённая задача — редактировать довольно большой (6 мегабайт) текстовый файл на небольшом разделе (оставшееся свободное место меньше тех самых 6 мегабайт). То есть нужно, чтобы редактор умел сразу писать файл на старое место.

До сих пор я успешно решал задачу с помощью mcedit. Но вот сейчас я потихоньку осваиваю vim, и заинтересовался, а он так умеет?

Запускаю vim.

:set noswapfile
:set nobackup
:e this_huge_file.txt

Правлю (редактирую пару байт). Пытаюсь сохранить файл. Получаю ошибку E514. На большЕм разделе, естественно, всё работает.

Можно ещё что-то в настройках подкрутить?

Да, задача ненормальная, и вопрос я задаю, скорее, из «спортивного интереса». А также потому, что теоретически похожая задача может возникнуть, условно говоря, «в горящем танке». Если vim так не умеет — окей, буду иметь в виду, что в таких случаях нужны другие инструменты (mcedit, как я уже сказал, справляется).

P.S. Периодические бэкапы с файла делаются, поэтому за его физическую сохранность просьба не беспокоиться.

P.P.S. Вопрос «А что мы будем делать, когда и под сам файл места не хватит» — вопрос отдельный.

 , ,

hobbit
()

Связь ПК-смартфон в своей программе по Wi-Fi

Форум — Development

Привет, ЛОР.

Некоторые разработчики делают пары программ ПК-Андроид, и учат их синхронизироваться по Wi-Fi. Примеры: MyPhoneExplorer, Домашняя Бухгалтерия. (К сожалению, в обеих программах, которые я вспомнил, под ПК подразумевается исключительно винда, но надеюсь, что и кроссплатформенные примеры есть.) В частности, MyPhoneExplorer может находить подключенные по Wi-Fi устройства, запрашивать PIN-код на обеих сторонах, и дальше уже работа идёт по IP-адресу.

Так вот. Интересует сам процесс поиска и «снюхивания», как можно реализовать это в своей программе.

  1. Какой протокол(ы) при этом используется?
  2. Какие API есть для реализации этих протоколов? Интересуют реализации для разных ОС: Windows, Linux, macOS. Если что-то изначально кроссплатформенное есть, вообще замечательно.

Не исключено, что мне нужны всего лишь «правильные слова» для гугления.

Update: вариант «разберись в исходниках KDEConnect и сделай, как там» я учитываю, но это на крайний случай. Исходники в лучшем случае после долгого рытья могут навести на нужные протоколы, но может кто-то и так знает?

 , ,

hobbit
()

Длинный синтаксис std::sort

Форум — Development

Добрый день, ЛОР.

Решил я тут сдуть пыль со старого кода и перевести его с кутешного qSort() на std::sort().

У кутешного было два варианта:

  • полный, сильно похожий на std::sort, с двумя итераторами и необязательной функцией сравнения;
  • короткий, которому передавалась ссылка на имя контейнера.

Аналогом первого является собственно std::sort.

Я правильно понимаю, что у второго аналогов нет?

 ,

hobbit
()

RSS подписка на новые темы