делаю тестовый рендерер на вулкане через офф плюсовую обертку vulkan-hpp — встретился с интересными сообщениями от слоя валидации — одна из которых «sType must be VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER» для структуры vk::ImageMemoryBarrier — хотя там оно должно само подставляться при инициализации, если верить словам разработчиков.
имеется Archlinux, i3wm, gtx1650 какое то время назад начала появляться такая ошибка. При ентом граф система просто зависает, хотя иногда звуковая система и система ввода продолжает нормально работать, однако замечаются некоторые фризы в системе ввода — например NumLock переключается спустя пару секунд и подобное, но может продолжать идти звук от видео и реагировать на паузу и продолжение.
Вначале я грешил на picom (compton) — но потом методом тыка выяснил, что енто драйвера nvidia 455ой версии. Откатившись некоторое время назад на предыдущую версию проблема разрешилась.
Позавчера обновившись я понадеялся, что в драйвере починили данную трабблу и обновил и сей драйвер так же. Но увы, сегодня после сна я не смог пробудить компьютер из режима выключенного экрана (гибернизация и сон отключены) — система просто не реагировала ни на что — ни NumLock (ни др. локи) никак не реагировали вообще, пробовать перейти в другой VT я не стал — сразу ребутнул систему полностью, а по загрузке уже узрел предоставленный выше лог.
Так в чем причина? Енто действительно драйвера nvidia 455 версии багованы — или енто какие то изменения были сделаны в Xorg и терь они стали косячными для ентой версии дров? Или какая то другая часть графической подсистемы? Енти фризы появляются и на lts версии ядра — так что енто не оно виновно.
Может ктото уже поборол и/или может посоветовать как енто все отладить?
имеется видяха gtx1650 и такой код — и он по непонятной мне причине выдает VK_ERROR_INITIALIZATION_FAILED при попытке заполнить массив VkPhysicalDevice'ов:
`--> ./src/vulkan_xcb
Detected devices: 1
terminate called after throwing an instance of 'std::runtime_error'
what(): In Devices::PhysicalDevices() vkEnumeratePhysicalDevices returned VK_ERROR_INITIALIZATION_FAILED
zsh: abort (core dumped) ./src/vulkan_xcb
п.с. при ентом первый прогон с nullptr указателем все же находит 1 девайс, что правда. п.п.с система арч.
имеется арч, i3wm, c++ и желание сделать свой композитный менеджер. однако никакой внятной документации к ентой либе в части рендеринга я не нашел. даже в хедерах в данной части либы только автоматически сгенеренные неинформативные комменты. хочу сделать рендер через вулкан.
интересует вопрос — как именно отправить готовый рендер на вывод? допустим, я получаю графические контексты со всех видимых окон, делаю с ними композитные манипуляции и рендерю через вулкан, и тут я готов отправить кадр на вывод. — как енто сделать?
имеется такой код — в нем я достаю из системы айдишники всех окон в системе. однако возник вопрос, на который я не нашел ответа в офф доках — как узнать количество элементов в intern atom-е, если он представляет из себя массив? так в функции
xcb_get_property()
последний аргумент количество элементов, пробовал различные функции для его определения, в том числе
xcb_intern_atom_sizeof()
— но оно выдает значение «8» для атома _NET_CLIENT_LIST, вне зависимости от количества открытых окон. Но я передавал туда значение возвращаемое функцией
xcb_intern_atom_reply()
— возможно енто и не верно, но в доках ничего не указано — а там вообще принимается void*.
может ктото юзал енту либу и вычислял енто значение? пока что у меня енто значение прямо указано в 1000 — однако енто логически неверно.
решил вновь опробовать лисицу в качестве основного браузера и люто пришел в негодование! вновь как и раньше багуются разные сайты — иногда не прогружаются некоторые элементы — потипу вот такого
пробовал полностью отключать все блокеры — и ublock и встроенный — эффекта ноль.
может кто знает магию настройки? или енто чистый баг?
`--> pacman -Qs firefox
local/firefox 80.0.1-1
Standalone web browser from mozilla.org
имеется проект который отказывается линковаться на шинде... ошибка говорит, что не находятся библиотеки для линковки. Если вконце названия библиотек убрать суффикс (вместо libatk-1.0-0.dll сделать libatk-1.0.dll), то библиотека находится при сборке, но отказывается находиться при запуске скомпилированной проги — надо подсовывать с ентими суффиксами. однако эти же библиотеки с такими же названиями (с ентими же суффиксами) успешно находятся если установить их с помощью msys2. как сделать магию которую делает msys2 по поиску названий?
вначале устанавливаю msys2, потом в нем ставлю тулчейн mingw. версия mingw-w64_x86_64 устанавливается 10.1.0
апд... — тему можно воспринимать как вопрос о том, как собрать прогу под шиндой с линковкой для gtkmm3 и sdl2_mixer, с применением cmake?
не могу поставить себе gtkmm minGW_64 версии из AUR... столько мучений и ожидания и тут обнаружилась неразрешимая циклическая зависимость: mingw-w64-poppler зависит от mingw-w64-cairo для запуска, а mingw-w64-cairo зависит от mingw-w64-poppler для компиляции...
и второе не может произойти потому чо mingw-w64-poppler не может запуститься без mingw-w64-cairo...
archlinux... делаю будильник+таймер+логгер на gtkmm3, столкнулся с проблемой, что на сетке grid не отображается label — который я хотел использовать как разделитель ":" между spinButton — часы минуты секунды...
clockentity.cpp если аттачить к grid данный delimiter то он не отображается и spin_buttton располагаются вплотную, вдобавок прога сегфолтится периодически при запуске.
как сделать красиво в данном случае? https://i.imgur.com/c3CljDZ.png вот тут необходимо между spinButton сделать разделители ":".
так не получается — грит ошибка: идентификатор шаблона «getNumRemainedCards<lp::Board::boardState::RIVER>» для «constexpr int8_t lp::Deck::getNumRemainedCards( » не соответствует никакой декларации шаблона
имеется арч, диск разделен на boot раздел (500М) и остальное — на все разделы накатаны LUKS (на boot естествено LUKS1, на остальной раздел LUKS2), поверх всех LUKS разделов налито LVM... диск размечен MBR, материнка на обычном BIOS.
при запуске компа выпадет спрос пароля для GRUB2 и после его ввода комп тупит минуту в среднем — точно не засекал.
почему так долго расшифровывает, если тот же диск в загруженной системе расшифровывается за считанные секунды?
а енто нормально, что мне выдет такую ошибку при сборке:
/usr/include/qt/QtCore/qmetatype.h:1416:41: error: cannot cast 'Module' to its protected base class 'QObject'
enum { Value = sizeof(checkType(static_cast<T*>(nullptr))) == sizeof(yes_type) };
не пойму, как правильно реализовать логику, описанную тут сам смысл понимаю — полиморфизм, — однако тут получается при таких кастах кастрация наследника, верно? но создать родительский класс из выделенной памяти под дочерний не получается из-за отсутствия необходимого конструктора...
может кто то сталкивался с такими трабблами при наследовании от QThread?
В общем и целом вопрос таков — каким образом отслеживать перемещение окна? Класс кона унаследован или не унаследован от Gtk::window.
т.е. не могу найти эвент отслеживающий перемещение окна. может что то недосмотрел, но вроде все эвенты проверил по офф докам и ничего не нашел — так ли енто?
имеется арч, решил зашифровать некие данные (в основном для опыта), все нормально получилось, однако не могу понять — где указать необходимый мне алгоритм шифрования? шифрую данные в каталоге пользователя, без участия рута. Пользовался постом и постом. нигде не нашел информации о том, как указать при таком способе алгоритм шифрования, — нет ни в манах, ни в вики. если монтировать от рута либо из fstab то, как предполагается такую опцию указать можно через опцию
ecryptfs_cipher=aes
однако опции монтирования не поддерживаются при монтировании не от рута. в файле конфига ~/.ecryptfs/secret.conf в конце строки
$HOME/.secret $HOME/secret ecryptfs
пробовал указать
-o ecryptfs_cipher=aes
,однако
`--> mount.ecryptfs_private secret
Mount options are not supported here