LINUX.ORG.RU

Сообщения kuzulis

 

Не грузится Linux на EFI разделе т.к. он стал шифрованным

Всем привет.

У меня в дуалбуте стоят винда 10 и арчлинукс, которые используют один и тот же системный раздел EFI.

С некоторого времени, линукс перестал грузиться, и писало что типа «неизвестная ФС и блабла бла» на вашем /boot разделе…

Нихренасебе, думаю, как так? Ведь винда то грузится… Начал копаться и заметил, что виндовый менеджер дисков стал отображать этот раздел EFI как зашифрованный. o_O…

С какого хрена? Тупая винда, ненавижу…

Вот, теперь не знаю как его обратно вернуть как было.. Я не знаю, то ли это после апдейтов виндовых так стало, то ли хз из за чего..

Никто не сталкивался с таким?

 , , , ,

kuzulis ()

Есть те кто работал с IAR && Cypress CY7C68013A (FX2) ?

Здорова, народ.

Кто нить работал с чипом CY7C68013A (FX2) в связке с IAR EW?

Суть в том, что я пилю (по приколу) USB HID Game Pads эмулятор для 10-ти кнопочных джойстиков для NES (от старых добрых 8-битных дендей).

Там уже все работает при использовании компиляторов KEIL C51 и SDCC. Но вот, с IAR какая то засада: ось не может проенумеровать USB дескрипторы устройства. Например, при попытке получить «Device Descriptor», ось получает какую то хрень у которой все поля заполнены нулями (вместо содержимого этого дескриптора). Я уже понавырывал на себе все волосы, но так и не понял что за фигня.

Может сталкивался кто или знает кого-то кто сталкивался с IAR && FX2?

ЗЫ: Гугл не выдает ни одного упоминания о связке IAR && FX2 (CY7C68013A) как я ни искал.. Похоже никто вообще этого не делал в природе, что ли.. :(

 , , , ,

kuzulis ()

Отладить кишки плагина эклипса

Всем здрасьте.

Понадобилось реверс-инженернуть некий жава плагин эклипса. Я уже декомпилировал большинство его файликов. Но целой картины как там все внутри работает нету.

Есть ли вариант как то по шагам отдебажить все эти кишки в процессе работы этого эклипса с этим плагином? Естественно, сорцов плагина нет.

 , , ,

kuzulis ()

CMake кросс-компиляция для ARM фейлится на этапе теста

Всем привет.

По нужде, а не по собственной воле нужно портировать проект на CMake из qmake/qbs. Проект кросс-платформенный на Qt, целевая платформа Apalis iMX6 с BSP Linux, сгенерированном при помощи Yocto. Используется toolchain сгенеренный тем-же Yocto. Хост машина - Ubuntu 18 x86_64.

Путь к toolchain:

/mnt/data/Yocto-miatech/sdks/sysroots/x86_64-pokysdk-linux/

Путь к целевой RootFs:

/mnt/data/Yocto-miatech/sdks/sysroots/cortexa9hf-neon-poky-linux-gnueabi/

В качестве IDE, естественно используется QtCreator 4.8.0, в котором все нужные комплекты настроены правильно (юзаю SDK, сгенеренный Yocto). Проекты, базирующиеся на qmake или qbs компилятся великолепно. Но вот с CMake какая-то ж#@а.

Проект (любой, даже Hello World) открывается корректно (нифига не открывается, сразу после открытия вижу треш), но при попытке кросс-компиляции, CMake вываливает такой треш:

The ASM compiler identification is GNU Found assembler: /mnt/data/Yocto-miatech/sdks/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc The C compiler identification is GNU 6.4.0 The CXX compiler identification is GNU 6.4.0 Check for working C compiler: /mnt/data/Yocto-miatech/sdks/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc Check for working C compiler: /mnt/data/Yocto-miatech/sdks/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc — broken CMake Error at /usr/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake:52 (message): The C compiler

«/mnt/data/Yocto-miatech/sdks/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc»

is not able to compile a simple test program.

It fails with the following output:

Change Dir: /tmp/QtCreator-iobfII/qtc-cmake-wCnOwxuI/CMakeFiles/CMakeTmp Run Build Command:«/mnt/data/Yocto-miatech/sdks/sysroots/cortexa9hf-neon-poky-linux-gnueabi/usr/bin/make» «cmTC_afb4e/fast» /lib/ld-linux-armhf.so.3: No such file or directory

CMake will not be able to correctly generate this project. Call Stack (most recent call first): CMakeLists.txt:22 (project)

Configuring incomplete, errors occurred! See also «/tmp/QtCreator-iobfII/qtc-cmake-wCnOwxuI/CMakeFiles/CMakeOutput.log». See also «/tmp/QtCreator-iobfII/qtc-cmake-wCnOwxuI/CMakeFiles/CMakeError.log». CMake Project parsing failed.

WTF?

Какого хрена CMake дергает make, расположенный на RootFs целевой ARM платформы? Естественно, оно не запустится на x86_64! Симлинк 'ld-linux-armhf.so.3' имеется на целевом RootFs и ссылается на валидную либу.

CMake-филы, как вы используете это говно? Как пофиксить?

PS: С qmake и QBS проблем нет, а CMake тупит... Бесит что ппц. :(

 , , ,

kuzulis ()

RFKill постоянно блокирует Bluetooth

Всем привет.

Юзаю Ёкту для генерации своих BSP образов с Linux. У меня в качестве нетворк-манагера используется connman. Втыкаю WiFi и Bluetooth свистки в борду, перезагружаюсь, и вижу что блютус заблокирован (rfkill list показывает что это так).

Мой BSP в автозагрузке запускает мое приложение, которое, собственно и работает с WiFi и Bluetooth.

Это приложение используя D-Bus API контролит этот самый блютус (подает питания, запускает сканирование и пр.). Но проблема в том, что при попытке программно «подать питание» (включить локальный блютус адаптер) оно фейлится, т.к. блютус «заблокирован». Это работает только когда я разблокирую блютус («rfkill unblock bluetooth» или «connmanctl enable bluetooth»).

Интересно, то что WiFi не блочится при старте системы, а блочится только блютус (и то блочится только первый раз когда установлен чистый BSP. но если один раз его разблочить, то после следующей загрузке блютус остается разблоченным)... Сколько не курил манов по rfkill или connman, так и не понял где там у них можно прописать чтоб оно не блочило блютус... Такое подозрение что его блочит connman.service...

Пока сделал «костыль» в приложении, когда оно само при своем старте дергает процесс в котором делает «connmanctl enable bluetooth» (благо, что все работает из под рута).

Есть у кого какие мысли как побороть все это? Мож кто сталкивался?

 , , ,

kuzulis ()

Обойти блокировки codereview.qt-project.org для git

Всем доброго дня.

Кто нибудь победил возможность git push/pull для получения/загрузки патчей на qt codereview и т.п.?

Я не спец по этим делам, почитал что или впн, или тор. С впн фиг найдешь свободный сервак. С тор еще тот гимморой с настройками, особенно под винду.

Как быть, товарищи?

 , ,

kuzulis ()

qmake && pkg-config && windows

Всем привет,

Cобственно задача: слинковаться с GStreamer на Windows. Имеется проект, использующий GStreamer в Linux, где линковка осуществляась через:

CONFIG += link_pkgconfig
PKGCONFIG += \
    gstreamer-1.0 \
    gstreamer-base-1.0 \
    gstreamer-app-1.0 \
    gstreamer-rtsp-1.0 \
    gstreamer-rtp-1.0 \
    gstreamer-net-1.0

Скачал Gstreamer SDK для Windows, и вижу, что там есть *.pc файлы и возникла идея также использовать pkg-config и в Windows.

По-быстрому нагуглил, что можно скачать lite сборку pkg-config для Windows.

Но не понятен момент, будет ли вообще qmake «цеплять» его, даже если прописать путь к екзешечке в переменной окружения PKG_CONFIG_PATH (и достаточно ли только ее? т.к. нужно же еще и прописывать пути к самим *.pc файлам)...

Был у кого такой опыт?

 , , ,

kuzulis ()

AVR GCC выкидывает неиспользуемые переменные, редиска

Всем привет,

Имеем Atmel Studio, AVR GCC 8-бит v4.8.4, оптимизация -Os (по размеру) и нужно «зарезервировать» место в некоей секции, например для переменной uint32_t. В коде приложения эта переменная нигде не используется. Просто некий внешний патчер, в готовый бинарь, в это место будет записывать некоторое 4-х байтное значение (например, CRC).

Так вот, при линковке, линкер выкидывает эту переменную как бы я ее не объявлял. Не помогает ни volatile, ни attribute(used), ни const, ни static. Вообще, ничего не помогает, компилер/линкер тупо игнорит все, пока где-нибудь в коде эта переменная не заиспользуется, например не инкрементируется.

Вот это все не работает:

static uint32_t x __attribute__ ((section (".NRWWENDCRC"))) = 0x43524331;
volatile static uint32_t x __attribute__ ((section (".NRWWENDCRC"))) = 0x43524331;
volatile uint32_t x __attribute__ ((section (".NRWWENDCRC"))) = 0x43524331;
const uint32_t x __attribute__ ((section (".NRWWENDCRC"))) = 0x43524331;

static uint32_t x __attribute__ ((section (".NRWWENDCRC"), used)) = 0x43524331;
volatile static uint32_t x __attribute__ ((section (".NRWWENDCRC"), used)) = 0x43524331;
volatile uint32_t x __attribute__ ((section (".NRWWENDCRC"), used)) = 0x43524331;
const uint32_t x __attribute__ ((section (".NRWWENDCRC"), used)) = 0x43524331;

Строка линковки примерно такая:

-Wl,-Map=«$(OutputFileName).map» -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -Wl, -section-start=.NRWWENDCRC=0x1ebfc -mmcu=at90can128 -Wl,--cref

Строка компилятора примерно такая:

-x c -funsigned-char -funsigned-bitfields -DNDEBUG -Os -fpack-struct -fshort-enums -Wall -Wextra -Wundef -mmcu=at90can128 -c -std=gnu89 -MD -MP -MF «$(@:%.o=%.d)» -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)"

Как я понимаю, отдельного файла линкера нет.

Знатоки, кто-нибудь сталкивался с таким? Помогайте :)

 , ,

kuzulis ()

Установить Qt 5.5.1 в freebsd 10.2

Всем здрасьте.

Собственно вопрос к БСД-шникам.

Имею удивительную ситуацию: установил на виртуалку FreeBSD 10.2, обновил все порты (через portsnap) и делал pkg upgrade/update.

Но при попытке установить «свежее» Qt 5.5.1:

sudo pkg install qt5-core

оно мне предлагает, елки, протухшее Qt 5.4.x, хотя в портах я вижу что там конфиги для Qt 5.5.1...

Что за п#@ц? Фишка еще в том, что в предыдущем 10.1 релизе этой г@#й фряхи устанавливается Qt 5.5.1...

Компилить самому Qt из портов нет желания... Может кто просветит меня, о, светлоликие, в чем хрень?

 ,

kuzulis ()

А дайте ссылочек на тулчейн с поддержкой Python

Всем доброго времени.

Нужен тулчейн ARM GCC для Windows хоста такой, чтобы у его (тулчейна) GDB дебаггера была подедржка Python. Ну, или сам дебаггер - желательно по-новее.

Блин, все тулчейны которые имеются (их дебаггеры) собраны без этой фичи (без --with-python опции).

Пробовал собирать самостоятельно из MinGW/MSys - фиг там.. Спложное крошево с ошибками при сборке.. Я уже задолбался гуглить и искать что там не так.

Есть у кого свежие ссылочки?

 , , ,

kuzulis ()

Скопировать Qt рантайм при установке проекта

Доброго времени всем.

Есть ли возможность сделать магию с иcпользованием QBS как, чтобы при выполнении «qbs deploy» или «qbs install» в мою выходную директорию копировались бы не только мои цели (мои библиотеки и мои приложения), но и необходимый Qt-рантайм?

Например, проект использует Qt-core, так вот, нужно чтобы оно только Qt5Core.so и клало куда нужно. При этом, хорошо бы еще и чтобы различало Release и Debug рантайм.

Есть у кого какие наработочки? :)

 , , ,

kuzulis ()

Опрос, termios «нестандартные» скорости

Доброго всем времени.

А встречал ли кто-то в каких-нибудь особенных Linux в termios.h определения таких «нестандартных» скоростей как B7200, B14400, B28800 и т.п.?

Интересуют именно Linux-ы и/или какие-нибудь другие *nix подобные ОС (за исключением BSD, т.к. там эти определения присутствуют).

 , ,

kuzulis ()

Гнев ArchLinux + QtCreator 2.6.2 + Qt5

Доброго времени всем.

Недавно обновился в Арче, запустил QtCreator чтобы покодить и.. - о ужас, вижу что шрифт в его меню + шрифт в редакторе - сплошное УГ. И не только шрифты - а вообще все виджеты и т.п - УГ.

А красные шарики брек-пойнтов - так вообще ппц...

Глянул внимательнее почему так - оказалось, что теперь QtCreator собран с Qt5... Это ппц, товарищи, негодую!

Каким упорином упоролся мантейнер чтобы сделать такую подлянку? О_о

Есть ли у кого мысли как побороть это говно? Самому компилить и делать pkg уж не охота - ну никак!

ЗЫ: Сцуко, злой ппц..

 , ,

kuzulis ()

Аналог фильтр-драйвера для tty

Доброго времени.

Есть ли возможность в Linux написать некий драйвер, аналогичный по возможностям фильтр-драйверу из оффтопика?

Необходимо реализовать возможность через этот драйвер приаттачиваться к любому /dev/ttyXYZ девайсу и перехватывать все вызовы read/write/ioctl, которые идут на /dev/ttyXYZ из пользовательского приложения.

Возможно ли это в принципе, и если да, то каким образом?

 , ,

kuzulis ()

Аналог OVERLAPPED структуры и DeviceIOControl

Доброго времени знатокам драйверописателям и не только.

Возможно-ли в Linux использовать отслеживание асинхронных событий от некоего девайса, которые не являются событиями от read()/write()?

Допустим, есть некое у-во, от которого мне нужно ловить некоторые события изменения его состояния, грубо - моргание светодиодика. Но мне это нужно делать не поллингом, а в event-based режиме.

В оффтопике я для этих целей могу сделать так:


// получаем хендл у-ва
HANDLE hDevice = ::CreateFile(..., FILE_FLAG_OVERLAPPED);

// создаем событие
OVERLAPPED ov = {0};
ov.hEvent = CreateEvent(...);

// переменная, которая отражает состояние LED
DWORD ledState = 0;

// запускаю отслеживание евента о смене состояния LED
::DeviceIOControl(
    hDevice, 
    LED_TRIGGERED_NOTIFY_ON, 
    NULL,
    0,
    &ledState,
    sizeof(ledState),
    NULL,
    &ov
    );

// где-то жду когда событие произойдет.
::WaitForSingleObject(
    ov.hEvent,
    INFINITE
);

// если оно произошло, то сбрасываю евент и 
// получаю состояние LED

::GetOverlappedResult(
    hDevice,
    &ov,
    &NumberOfBytesTransferred,
    FALSE
);

// ledState теперь содержит текущее состояние LED у-ва 
DWORD newLedState = ledState;

А как сделать подобное в Linux?


// получаю дескриптор у-ва
int fd = ::open();

// делаю ioctl
::ioctl(fd, LED_TRIGGERED_NOTIFY_ON, <но что сюда совать?? >)

// Жду события, но непонятно какой дескриптор сюда
// писать.. По идее нужен не дескриптор у-ва fd,
// а какой-то дескриптор события, но где его взять?
::select(<какой сюда дескриптор нужен???>)

Есть ли какие-то мысли по этому поводу?

Может быть, в ioctl() передавать некую пользовательскую структуру, типа:

// 
typedef struct {
    int efd; // дескриптор события, но как его создать?
    int ledState; // состояние LED
} led_state_t;

led_state_t ls = {0};

ls.efd = <надо как-то что-то создать??>

::ioсtl(fd, LED_TRIGGERED_NOTIFY_ON, &ls);

::select(ls.efd, ...);

// если дождались, то
int newLedState = ls.ledState;

Подскажите, знатоки, как в этом случае быть?

 , , ,

kuzulis ()

QtCreator как IDE для разработки модулей ядра.

Доброго времени всем.

Суть: Я хочу использовать QtCreator как текстовый редактор с подсветкой синтаксиса и автодополнением для разработки модулей ядра Linux.

Мне нужно, чтобы QtCreator делал поиск заголовков всегда только в конкретном, указанном мною месте, например, в: /usr/src/linux-3.1.7-1-ARCH/include

Я пытался *.pro жестко захардкодить путь к заголовкам:

INCLUDEPATH = /usr/src/linux-3.1.7-1-ARCH/include

Но это не работает. QtCreator все равно сначала по умолчанию ищет заголовки в /usr/include.

Также в свойствах проекта пробовал переключаться на

«Чистая системная среда»

в которой осталось только:

LD_LIBRARY_PATH=/usr/lib PATH=/usr/bin:/usr/bin QTDIR=/usr/share/qt

Но ничего не получается.

Что в этой ситуации можно сделать? Что посоветуете?

kuzulis ()

не компилятся программы !!!

Всем доброго времени суток!!!

Вступление: имеется мопс 4.1 .. стояло ядро 2.6.15. и стояли заголовочные файлы 2.6.15 Далее я скомпилил ядро 2.6.19 , поставил его и удалил исходники ядра + само ядро 2.6.15 и заголовочные файлы к нему (2.6.15)

Исходники ядра 2.6.19 лежат в /usr/src/linux-2.6.19 .. там же лежит и симлинк linux -> /usr/src/linux-2.6.19

Но чегото проги не хотят компилиться.. вылетает ошибка типа препроцессора С и т.п. . не находятся некоторые *.h файлы

Так вот вопрос: имея только лишь исходники ядра - как правильно сделать ссылки и на какие каталоги, чтоб стали нормально компилиться проги ??????? (именно для мопса!!!!!)

Я до сих пор не въеду Улыбка как в мопсе настраиваются пути к заголов. файлам и т.п шоб все скомпилилось???? ?

kuzulis ()

просмотр поддерживаемых устройств

Здрасьте!!!!

Вопрос: как просмотреть, с какими устройствами собрано ядро линукса ???

например, модули я могу увидеть в /lib/modules, подгруженные модули командой lsmod...

А как посмотреть если ядро например монолитное??? что в него сунули ???

kuzulis ()

Kopete не подключается к ICQ

Доброго времени суток!

У меня почему-то kopete не хочет коннектится к серверу ICQ ... При запуске она(прога) долго висит типа подключается... при попытках сменить статус, на некоторое время подключается, а затем выдает сообщение типа:"отключился" или "пользователь зашел дважды..." или типа "сервер заблокировал учетную запись ....." ----------- Что не так с КОПЫТОМ ??? Я скачал последнюю версию оного... Хотя тот-же SIM подрубается без проблем к серверам... ----------- Что делать с копытом, мож где надо прописать че-нить... :-) ?

kuzulis ()

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