?

Log in

No account? Create an account
Программизм's Journal
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 20 most recent journal entries recorded in Программизм's LiveJournal:

[ << Previous 20 ]
Friday, February 22nd, 2019
2:46 am
[m_f]
Про Qt и про qmake
Пытаюсь перенести проект с рабочей машины на домашнюю. Пытаюсь собрать и QtCreator-ом и по-пролетарски, через make и qmake. Ошибка в обоих случаях одна и та же:

make[1]: *** No rule to make target 'dialog.ui', needed by 'ui_dialog.h'. Stop.

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

Заранее спасибо.
Friday, February 8th, 2019
2:00 pm
[m_f]
Вопрос по Qt
Смешной вопрос: почему QObject::connect может вернуть false? Посмотрел, вроде бы сигнал определён в sender, метод определён в public slots в receiver. Сигнатуры совпадают. Что ещё может не нравиться? К моменту вызова connect оба экземпляра уже существуют. Код ниже:
Collapse )
UPD.Блин, сам не заметил - в первом параметре типы отличаются разрядностью. Привёл в соответствие - стало коннектиться.
Thursday, February 7th, 2019
1:35 pm
[m_f]
Опять про QtCreator
Вопрос: на основе каких настроек QtCreator создаёт makefile-ы? Я чуть раньше задавал вопрос про QtCreator, вроде разобрался - проблема в странных путях в созданных QtCreator-ом makefile-ах. Вопрос - где можно эти настройки найти и поменять?
Tuesday, February 5th, 2019
2:55 pm
[m_f]
Вопрос по псевдотелетайпам
Пытаюсь использовать pty в Debian, 32-разрядном. Получаю дескриптор, но когда пытаюсь сбросить сигнал RTS, получаю от ioctl -1. Код приведён ниже:
Collapse )
Что я делаю не так?
UPD. errno содержит EINVAL. Не пойму, вроде всё хорошо
UPD.2. Видимо, команда TIOCMGET/TIOCMBIC/TIOCMSET не работают в данной версии Linux. Вопрос - а как можно изменять состояние линий, например RTS/CTS?
Tuesday, January 29th, 2019
1:36 pm
[m_f]
Вопрос по fs-cifs
Пытаюсь подключить каталог расположенный на другой виртуалке. Команда и вывод ниже:
/usr/sbin/fs-cifs/RTCMACHINE:XX.XX.XX.XX:/shared /shared root root

io_mount: No error
/usr/sbin/fs-cifs: missing arguments, or all mount attempts failed

То есть, вроде бы no error, но тем не менее на что-то ругается. Прошу совета
UPD. Проблема решилась. Оказывается, разделяемые каталоги надо было прописать в /etc/samba/smb.conf. Как только я это сделал, всё заработало.
Friday, January 25th, 2019
5:38 pm
[m_f]
Вопрос по Qt
Вопрос: как работает QApplication.

В доке про метод exec() читаю:
Enters the main event loop and waits until exit() is called, then returns the value that was set to exit() (which is 0 if exit() is called via quit()).

То есть, само оно выйти не может?
Приложение стартует диалог, затем в диалоге стартует таймер на 10 секунд, по завершении которого должна запуститься ещё одна функция.
Функция не запускается - в консоль не пишет.
Вопрос - какого фига оно выходит из exec? Кто мог вызвать exit()?

Прошу совета
Wednesday, January 23rd, 2019
5:23 pm
[m_f]
Вопрос по QtCreator
Есть проект под QtCreator. Пытаюсь его собрать, получаю следующую ошибку:
14:10:46: Cannot find Makefile. Check your build settings.
Error while building/deploying project хххх (target: Desktop)
When executing step 'Сборка'

При этом глазами я вижу существующий makefile в папке проекта. Подскажите, пожалуйста, в чём может быть беда?
К сожалению, разработчиков не найти, а построить как-то надо. Пока что я делаю это так: запускаю build в QtCreator, после того, как оно выйдет с вышеописанной ошибкой иду в терминале в нужную директорию и запускаю make, всё строится.

Может быть, можно что-нибудь в настройках QtCreator поправить, чтобы всё из него строилось?
UPD. Проект включает в себя несколько отдельных проектов. Так вот, по отдельности все проекты строятся. Из QtCreator. А весь проект большой, не строится с ошибкой, как выше написано.
Wednesday, December 12th, 2018
7:11 pm
[m_f]
Вопрос по Debian
Возник такой вопрос. Вируталка в VirtualBox, гостевая ОС Debian, хостовая Windows 10. Хочу примонтировать shared папки в автозагрузке. Написал скрипт, назвал mountfolders.sh, выполнил update-rc.d mountfolders.sh defaults S4 K6.
Всё хорошо, только во-первых, не вижу логов в dmesg, во-вторых, нифига не примонтируется.
Что я делаю не так?
Debian 3.2, выбирал не я, но придётся с ней жить

Заранее спасибо
UPD. Проблема решилась так. Нагуглил утилиту sysv-rc-config, сложил маунты в etc/rc.local и выставил разрешение на все ранлевелы. По-пролетарски, но работает. Пытался сделать через bashrc, но проблема в том, что mount должен выполняться из-под root, поэтому доступ получался только для root. Через fstab почему-то не работало.
Monday, April 16th, 2018
11:54 am
[kray_zemli]
Как расшифровать этот жидовский шифр?
Судя по всему, фишка в полосках на заднем фоне:



PS: Это отсюда, вроде как Моссад загадки загадывает.
Friday, February 2nd, 2018
6:27 pm
[elexandra]
А вот поясните мне за гитлаб и инфраструктуру, а то я что-то с ЛПР никак не могу найти общий язык.

Насколько мне известно, популярные сервисы типа гихаба, трелло, амазона и т.п. находятся в иностранной юрисдикции и под контролем сторонних компаний, поэтому в любой момент могут повести себя непредсказуемо. Навскидку приходят в голову примеры блокировок гитхаба в РФ, бывшие проблемы с Эпл в Крыму и два падения сервисов Амазон (второй с докером).

Проблема в том, что в нашем отделе (примерно 25 человек, из них 10 программистов, разработка энтерпрайза, государственная научная организация) планируют перенести часть инфраструктуры на гитлаб. Это исходный код всех проектов и всякие текущие задания.

Мне как параноику и стороннику всяческих теорий заговоров такой переход мерещится смертельным. Например, по политическим причинам доступ к сервисам могут прикрыть в любой момент. Это закроет доступ к коду и переписке и блокирует работу как минимум на несколько часов или даже дней.

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

Ведь тот же гитлаб вроде как можно развернуть локально на серверах компании (ведь раньше у нас был свой меркуриал, вики и т.д.). Но этого не делается. После поломки сервера приняли решение переходить на гитлаб. Мне это объясняют так: нет человека, который будет отвечать за сервер.

Пытался поднять эту тему. Говорю, как-то это всё неправильно - отдавать свои проекты сторонним организациям.

Ответ: ой, не надо разводить холивар. Как будто ты гуглу и т.п. свою переписку не отдаёшь.

Я: рабочая почта у меня на сервере в корпоративной сети. Это безопасно.

Ответ: все крупные компании пользуются гитлабом. А у них в безопасности разбираются намного лучше, чем наши копеечные админы.

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

Я: но это не повод, чтобы сливать проекты на сторону.

Ответ: это твоё мнение, мы тебя услышали.

Тут я подумал, что где-то читал обсуждение о том, что если компания покупает сервисы официально (а не просто сотрудники заводят аккаунты), то в этом случае защищённость сервисов выше. Спрашиваю: мы что-нибудь покупаем у гитлаба?

Ответ: к чему эта демагогия? У тебя есть аргументы или просто поговорить хочется?

Я: почему демагогия, это же безопасность.

Ответ: у тебя есть агрументы или это твоё мнение?

В общем, разговор повис в воздухе. Но не суть. Вопрос - как обстоят дела на самом деле? Насколько критично/безопасно в энтерпрайзе (проекты уровня города-миллионника) пользоваться гитхабами-гитлабами-амазонами и иже с ними?

Или, может, я просто заморачиваюсь и лучше не забивать себе этим голову.

Буду благодарен за любые мнения.
Saturday, March 10th, 2018
4:56 pm
[kray_zemli]
Raster Image Processor
Показался заказчик ("импортозаместитель" в области широкоформатных принтеров), который хочет сабж. Как я понял, это такая штука, которая берёт PostScript и выдаёт растр, который идёт на принтер. Пока только в общих чертах сказали, чего хотят, скоро еду на встречу, хочется быть подготовленным.

Направление для меня совершенно новое. Заранее я не знаю, каково состояние этой немолодой отрасли, чем их не устраивают существующие решения, есть ли у них какая-то своя заготовка, сколько человеко-месяцев нужно, чтобы создать такое решение с нуля. Также мне неизвестно, есть ли в этой области вменяемые open-source решения, которые можно было бы взять за основу.

Вроде бы, документация на PDF занимает несколько тысяч страниц, её просто прочитать нужен минимум месяц, а PostScript -- это нечто очень похожее. Что намекает на то, что задача для одного человека может быть вообще неподъёмной.

В общем, расскажите что-нибудь на тему. В первую очередь, чем отличаются существующие решения, и есть ли вменяемый open-source.
Saturday, February 17th, 2018
5:31 pm
[kray_zemli]
Демо под Windows
Год сижу без работы, совсем разучился программировать.

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

Рендериться кадры и звук будут программно, по-старинке. Впрочем, хочется задействовать банальное 3D (вращающийся многогранник с текстурами), чтобы самому не возиться, но тоже рендерить его в буфер.

Кроме того, эту демку я хочу после отладки записать в видеофайл, пережать и выложить на youtube. Не с экрана захватывать, разумеется, а каким-нибудь API.

Дайте какой-нибудь несложный исходник на C++ под Windows, требующий минимум сторонних библиотек (лучше на основе доступного в Windows API типа DirectX), откуда этот готовый "скелет" можно было бы выдрать.
Monday, November 20th, 2017
3:15 pm
[kray_zemli]
Что изучить чтобы грести бабло?
Какие языки/технологии изучить, чтобы выгребать максимум бабла при константных затратах, и не тратить годы на поиск заказчика/работодателя? Какую область/специализацию предпочесть? В рамках разумного: полгода-год на усвоение. Какой вообще алгоритм достижения максимального дохода? Интернет или десктоп? Фулл-стэк или специализация? Фриланс или работа на дядю? Нужно ли заморачиваться git-профилем и колбасить забесплатно опенсорс? Как найти нормального заказчика или дядю? Имеет ли смысл взять в подчинение пару студентов-балбесов, или одному проще?

Или тупо попытаться устроиться в гугл/микрософт/амазон, и только в случае неудачи предпринимать что-то иное?
Sunday, November 19th, 2017
4:02 pm
[kray_zemli]
Освоить Windows GUI: с чего начать?
Так уж получилось, что с поступлением на физфак активно дрючиться программированием я перестал, и так и не успел освоить создание GUI программ под Винду. Хотя я читал исходники чужих программ, реверс-инженерил много всего, и какое-то представление о сообщениях, Windows GDI и т.п. имею. В те времена мода на OWL уже ушла. Программы либо использовали вызовы GDI напрямую, либо полагались на MFC. Диалоги рисовались в спецрисовалках, клались в ресурсы, и оттуда загружались готовые. Была ещё пионерская игрушка Delphi, которая хранила формы в пикселях вместо диалоговых единиц, отчего при нестандартных установках размерах шрифта всё съезжало, поэтому её я никогда всерьёз не воспринимал. С другой стороны, если украшать диалоги картинками, то и у правильного метода были проблемы. Ещё тогда была мода рендерить изображения окна полностью самостоятельно, со всякими градиентами, гладкими углами и т.п., и выводить готовую картинку.

Но с тех пор прошло 20 лет. Появились GDI+, Direct2D, и хрен пойми что ещё. С другой стороны, народились всякие Qt, GTK, wxWidgets. А я, в свою очередь, решил бросить физику и податься в программисты. Но невозможность создать законченную программу от и до (в частности, из-за отставания в области интерфейса) сильно сдерживает мою программистскую карьеру.

Итак, в какой последовательности советуете осваивать новое? Исходники каких программ почитать для примера? Судя по тому, что я читал о GDI+ и Direct2D, внутри та же самая модель событий и полученный по окну HDC, изменились только вызовы отрисовки. Direct2D отсутствует на XP (что всё в меньшей степени, но ещё, думаю, актуально). GDI+ ругают за тормоза и вырвиглазный рендеринг текста. А все эти Qt монструозны, и мне, как человеку со стороны, непонятно чего дающие.

Или же вообще забросить к чертям C++ и выучить C#, в котором, я слышал, дофига встроено всего готового? Некоторые, вроде бы, делают интерфейс в HTML и показывают как страницу. Или это можно и через C++ делать тоже без особых трудностей? Впрочем, в области HTML и JS я тоже за 20 лет сильно отстал. Стоит ли навёрстывать?

В общем, если делать законченную программу, то на чём лучше основывать интерфейс?
Monday, May 29th, 2017
5:55 pm
[elexandra]
Что использовать для локального хранения и индексации блогов?

Условно подписка на несколько сотен блогов. Нужно хранить все записи и комментарии за последние, скажем, пять-десять лет.

SQL/NoSQL? JSON/XML? SQLite/UnQLite/LiteDB/whatever?

Клиентская система — Windows.

Нужно что-то типа Elasticsearch, только не сервер и WebApi, а в идеале клиентская библиотека под .NET с минимумом рабочих возможностей поиска и хранения.

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

Собираю любые идеи.
Wednesday, September 27th, 2017
10:25 am
[a_irrational]
Помогите с темой диплома!
Почти каждый сталкивается с этой проблемой и меня она не обошла… Нужна определенность в жизни… В любой непонятной ситуации нужно писать диплом)
Специальность - "Прикладная информатика в менеджменте".
Думала над темой "Бизнес-планирование проектов" (что-то в этом роде), но руководитель забраковал и посоветовал подумать о теме "Информационное обеспечение ..." (всяких производств).
Расскажите, как вы начинали этот путь, ваши темы? Спасибо за помощь!
Tuesday, May 30th, 2017
12:02 pm
[kray_zemli]
Инструмент для разбирательства в чужом C++ кода
На нашей работе много так себе написанного C++ кода и очень мало документации.

У меня большой опыт использования одной очень известной тулзы для reverse-engineering. Её особенность в том, что перед заголовком функции она показывает так называемые XREF'ы, т.е. места, откуда эта функция вызывается. На них можно нажать и попасть туда, там опять нажать на XREF или вызов функции, всё кладётся как бы в стек, и потом по шагам можно возвращаться обратно.

Хочется подобного, но не для бинарников, а для C++ исходного кода. Что-то типа специализированного статического анализатора. Чтобы быстрым нажатием нескольких кнопок узнать, где используются поля структуры, откуда вызывается функция или метод, в т.ч. виртуальный, где создаётся экземпляр класса, и т.п. Полнотекстовый поиск не всегда хорошо справляется, даёт ложные совпадения (одноименные методы в разных классах и т.п.), и вообще, недостаточно автоматизирует процесс.
Monday, March 13th, 2017
9:33 pm
[m_f]
Вопрос по swing
Есть такой код.
Collapse )
import org.jdesktop.swingx.JXLabel;
import org.jdesktop.swingx.JXTaskPane;



LayoutManager lm = panel.getLayout();


FlowLayout fl = (FlowLayout) lm;

JXTaskPane pane2 = new JXTaskPane();
pane2.setTitle("pane2");
JXLabel label = new JXLabel();
JTextField textField = new JTextField();
textField.setText("value");
label.setText("label");
label.setHorizontalAlignment(Label.LEFT);
pane2.add(label);
pane2.add(textField);

JXTaskPane pane3 = new JXTaskPane();

JLabel label2 = new JLabel();
label2.setText("label2");
pane3.add(label2);
pane3.setTitle("pane3");
label2.setHorizontalAlignment(JXLabel.LEFT);
panel.add(pane2);
panel.add(pane3);
showThis();
В итоге, два диалога pane2 и pane3 выводятся рядом. Я хочу, чтобы они выводились один под другим. Пытался ставить выравнивание по левому краю в дayout manager-е - они выводятся у правого края родительской панели, но все равно один справа от другого. Что мне могут посоветовать коллеги?

Заранее спаисбо.
Tuesday, January 10th, 2017
7:13 pm
[m_f]
Вопрос по JNI
Пытаюсь запустить java-ское приложение из-под eclipse. При старте оно пытается подгрузить jni библиотеки. Получаю exception-ы вида:
java.lang.UnsatisfiedLinkError: /home/user/workspace/myapp/extlibs/linux64/libsecond.so: libfirst.so: cannot open shared object file: No such file or directory
При этом я вижу в том же каталоге, что и libsecond.so, файл libfirst.so. У него есть права на исполнение. В чем может быть проблема? Ubuntu, eclipse.
Wednesday, December 28th, 2016
9:19 pm
[m_f]
Вопрос по swing, ,часть 2
В общем, с помощью полученных советов у меня получилось нарисовать tree view. Проблем теперь две
1. Контрол для редактирования не переключается обратно, на контрол для показа.
2. Когда я все-таки вышел обратно, нажав Esc, данные не поменялись на отредактированные.

Заранее благодарен за советы.
[ << Previous 20 ]
RU PROGRAMMING   About LiveJournal.com