LINUX.ORG.RU

Сообщения Edible

 

Запилил PNG->[BB] транслятор. Ругайте

 , ,

Edible
()

qmake -> cmake, голые си

Пытаюсь перевести .pro файл на cmake, голые си, никаких кутей.

Везде пишут что cmake мол по расширению файла понимает, чем его компилить g++/gcc. А вот фиг. Эта зараза компиляет И g++ версию и gcc.

Как заставить эту нехорошую программу конпелять только gcc и покласть то что скомпилено в отдельную директорию? PRO файл

TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += main.c \
    definitions/consts.c \
    printing/print.c \
    processing/parameters.c \
    warehouse/warehouse.c \
    processing/loader.c \
    processing/processor.c

LIBS += -lpng
DESTDIR = ../[bin]

HEADERS += \
    definitions/messages.h \
    definitions/types.h \
    xmacro/xerrors.h \
    definitions/consts.h \
    printing/print.h \
    xmacro/xparameters.h \
    processing/parameters.h \
    definitions/helpers.h \
    warehouse/warehouse.h \
    processing/loader.h \
    processing/processor.h

cmake

project(cmaketest)
cmake_minimum_required(VERSION 2.8)
aux_source_directory(. SRC_LIST)
aux_source_directory(./definitions SRC_LIST)
aux_source_directory(./printing SRC_LIST)
aux_source_directory(./processing SRC_LIST)
aux_source_directory(./warehouse SRC_LIST)
aux_source_directory(./xmacro SRC_LIST)
add_executable(${PROJECT_NAME} ${SRC_LIST})

find_package(PNG REQUIRED)
if (PNG_FOUND)
    include_directories(${PNG_INCLUDE_DIR})
    include_directories(${ZLIB_INCLUDE_DIR})
    add_definitions(-DUSE_LIBPNG)

    target_link_libraries(${PROJECT_NAME} ${PNG_LIBRARY})
endif()

set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -Wall")
#set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Wall")

Нужно затем, что надо будет конпелять на сервере, а там очень старая слака и мало место для кутей. Замечания по cmake файлу принимаются.

 ,

Edible
()

«Горизонтальное» объединение двух файлов

Есть два стула файла:

A
B
C
D

F
G

Есть готовое решение в виде какой-нибудь утилиты, чтобы в одно строку сделать так:

AD
B
CF
G

?

 

Edible
()

Нет переменных во время отладки в QtCreator'е

debian stable, посдедний QtCreator, проект на чистом си. gcc 4.8 & 4.9, gdb 7.4 & 7.11, отладочная информация создается (по утверждению gdb). Если добавить переменную руками в вотч лист - 1 к 2м что она добавится. Раз из 50 переменные появляются, но обычно почти под самый return. gcc sources установлены, -gsplit-dwarf пробовал, форматы отладочной инфы ставил в 2, 3 и 4 - безтолку.

Куда еще покопать?

Прошу накидать побольше идей, ответить смогу только вечером из дома - не работает на работе.

 , ,

Edible
()

Получить количество совпадений файлов между двумя каталогами

Есть у меня каталог с локальным результатом и каталог с базой. Мне нужно узнать, сколько файлов в локальном результате совпали с файлами в базе. Т.е. например в базе:

base$ find ./
./
./01e5f3d9ec4660834ca25a41ce0ae7b0.png
./2aff9b954a4fadfd4eada57028f457a6.png
./2d2976c579c9c89712d772eab004831d.png
./49effd2f862e33a98a19d5328cccdd74.png
./749c34aadaa0351fb9a1283f56660b0f.png
./8c01446a22d826f0b9b05ca9b3938118.png
./e3659b0cd189fbf8777eab8533fc378d.png

А в локальном результате:

local$ find ./
./
./8c01446a22d826f0b9b05ca9b3938118.png <-- Совпал с базой
./e3659b0cd189fbf8777eab8533fc378d.png <-- Совпал с базой
./49eff82423bdbd32a102d5328cccdd74.png
В общем мне надо чтобы результатом команды стало 2.

Проверка на совпадение только по имени, файл уже назван по своему md5 хэшу. В голову идет только извращения с find ./base/ > file1 && find ./local/ >file2 а дальше разврат с diff. Как можно попроще?

 

Edible
()

Нарезать изображение

Есть пнгха скажем 800х600. Нужно нарезать ее на слайсы 16х16. Как это сделать наименее геморройно?

 

Edible
()

LDD показывает лишнее

LDD показывает бибилиотеки, которые я не подключал - он показывает рекурсивно? В смысле я цепляю А, А цепляет Б -> LDD показывает А и Б? Или что-то тут не так?

 

Edible
()

По экспорту хэдэров для либы

Есть тут кто .so или .dll писал? Представьте что у вас несколько модулей -.h, в каждом есть несколько функций которые надо заэкспортить наружу. Т.е. добавить их сигнатуры в lib.h который будет подключать юзер либы.

Есть готовые решения как перегенеривать этот .h или каждый делает свои велосипеды?

 

Edible
()

Aegisub стал валиться

Работал больше года с эти файлом - все было ок. Начиная со вчерашнего дня стал валиться. Ничего не обновлялось. При запуске из консоли выхлоп такой:

alex@laptop:~$ aegisub-3.0 
../src/unix/threadpsx.cpp(1396): assert "Assert failure" failed in SetPriority(): impossible to set thread priority in this state
The program 'aegisub-3.0' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadLength (poly request too large or internal Xlib length erro'.
  (Details: serial 394897 error_code 16 request_code 60 minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

Как диагностировать, что делать?

Aegisub из реп бубунты

 , , ,

Edible
()

Векторизация старого мультфильма

Есть мультфильм 90х годов. Градиентов нет, нарисован в flat color. Есть запись в ~800x600. Четкие контуры, полная заливка одним цветом.

Есть технология, которая позволит его векторизировать и сделать FullHD?

 ,

Edible
()

Не работает запись в QVector<QVector

В материнском классе объявлен QVector< QVector<int> > data. В дочерний передается &data. Там этот указатель пишется в локальную переменную.

После чего пытаюсь достучаться до элемента и не стучится - говорит что это все read only и типа фиг тебе, программист:

        for (int y = 0; y < Ybox; y++)
        {
            data->append(QVector<int>(Xbox));

            for (int x = 0; x < Xbox; x++)
            {
                data->at(y)[x] = img.pixel(x, y);
            }
        }

 ,

Edible
()

LO Base - добавить запись в таблицу с ID

RESOURCES __________
RESOURCE_ID
ATTR1
ATTR2
DEPARTMENT_ID


DEPARTMENTS _________
DEPARTMENT_ID
DEPARTMENT_NAME
DEPTATTR2

Как в этом *** LO добавить форму чтобы добавлять записи в таблицу RESOURCES? Там DEPARTMENT_ID, все мои попытки сделать чтобы на форме выбиралась DEPARTMENT_NAME, а ID подтягивался автоматом не увенчались успехом - все, что получается также создает запись в DEPARTMENTS

Связь 1 ко многим, DEPARTMENT_ID в RESOURCES может повторяться много раз.

Объясните, как запилить форму для добавления таких записей?

 ,

Edible
()

Грохните, пожалуйста, юзера

Был аккаунт с рабочего компа, уволился, доступа больше нет. Moreo.

 

Edible
()

Доступ к буферу окна в XServer

Рисую на окне через XPutImage. Если вызывать повесившись на OnDraw - мерцает, так как форма сначала показывает свою текстуру потом только дает на себе рисовать. Можно как-то получить доступ к буферу формы или вообще запретить ей рисовать свой буфер?

sudo su -c «cast Zubok»

Нашел вот это: https://tronche.com/gui/x/xlib/window/XSetWindowBackgroundPixmap.html

Не уверен, что это то что мне надо.

 

Edible
()

Что не нравится valgrind? (invalid write of size 4)

SmlErrors SmlWhsAdd(SmlElement element, SmlIndex * index)
{
    SML_CHECKPTR(index);

    SmlElement * ptrold = warehouse.elem;

    warehouse.elem      = realloc(warehouse.elem,
                                  (++warehouse.elemcount) * sizeof(SmlElement));
    if (!(warehouse.elem))
    {
        warehouse.elem = ptrold;
        *index         = 0;
        warehouse.elemcount--;
        return SML_ERR_BADALLOC;
    }

    warehouse.elem[warehouse.elemcount - 1] = element;

    *index = (warehouse.elemcount - 1); // <---- Здесь
    return SML_ERR_SUCCESS;
}

Снаружи приходят адекватные данные.

 ,

Edible
()

Licwin, какого?

Licwin, какого ты снес топик? www.linux.org.ru/forum/desktop/12105774

Если ты не заметил, это технический вопрос, который вырос из замеченного в толксах бага. Какого хутора ты его снес?

 

Edible
()

do..while работает не так как надо


#define MAX(A, B) ((A) > (B)) ? (A) : (B)

ymax = 4;
s = 4;
x = 0;

            do
            {
                y = s - x;
                printf("%d, %d\n", x, y);
                x++;
            }
            while (y != MAX(s - ymax, 0));

Почему при s = 4 оно выходит после первой итерации? Должно же стать y = 4, 3, 2, 1, 0; а оно выходит после y=4. последнее условие получается так: while (y != MAX(0, 0)) -> while (y != 0), а при y = 4 выкидывает за пределы while.

Кто подскажет почему так?

 

Edible
()

Linux Biolinum

1. Почему в офис (либру) под винду идет Linux Biolinum G, а в linux Linux Biolinum O? Из-за этого документ, сделанный под виндой выглядит в линуксе как говно и наоборот.

2. Где достать Linux Biolinum G под линукс?

 ,

Edible
()

Медленное закрытие, переключение между приложениями etc

Заметил следующие симптомы - если программу не трогать минут пять, пользуясь другой - переключение на первую обратно приводит к зависанию оной секунд на 10. Второй симптом (вероятно связан с первым) - запуск программ занимает секунд 10-15, даже если это что-то простое типа калькулятора или терминала. Третий симптом (the same) - закрытие программ занимает секунд 10-15 (например браузера и видеоплеера).

С чем может быть связано, как проверить?

Спасибо.

SMART: http://pastebin.com/9cPeEyum

Xubuntu 14.04.2 LTS, Lenovo G530, 2G памяти, ноутбуку лет 6. Система установлена Apr-14, с тех пор были только обновления программ и безопасности без обновления дистра.

fstab: http://pastebin.ca/3205394
-l /dev/sda: http://pastebin.ca/3205397

 ,

Edible
()

Толксы: Разработка под Linux

Вся суть разработки и фикса багов под линукс - если есть возможность закрыть баг без фикса - его закроют. https://bugs.launchpad.net/ubuntu/ source/xorg/ bug/1352752

Баг подтвержден, подвержены почти все кто под intel, но нет, давайте закроем багу потому что чувак что ее открыл уже не работает под тем компом.

Сегодня раз 5 или 6 упал под интелом при использвании rdesktop - а бага уже закрыта как invalid, а другие баге ее референсят, говоря что все новые - duplicate.

 , , ,

Edible
()

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