Hatred's Log Place

DON'T PANIC!

Oct 23, 2010 - 2 minute read - programming c++

Qt4 on Mac OS X

Делал тут небольшую работку, писал программку, которая позволяла таскать линии по холсту и формировать по его данным потом xml файл в заданном формате, который потом превращался в уровень для игры. Заказчик просил ObjectivC и целевая платформа Mac OS X, на мой вопрос о критичности ObjectvC ответил - не суть, предложил написать на Qt4, тем самым покроем, одним махом, три платформы: Linux/Windows/Mac, но будет нуанс - я только примерно знаю как собирать под Mac, в общем, подумав - согласились.

Работу, естественно, я делал под Linux, проверил сборку для Windows (опять таки - кросскомпиляция). Показал результаты (сборку под Win32 и скапченый видеоролик работы в Linux), заказчику понравилось, дальше пошла очередь запуска на Mac OS X…

Первым делом был скачан Qt SDK 2010.05 - бронебойно, но зато всё сразу есть. Собрать получилось без проблем (были ворнинги у линковщика на лишние пути, указанные через атрибут -L, которые реально не существуют, но тут камень в огород создателям SDK). А вот дальше встал вопрос - а как запускать приложение на машинах где нет Qt4? Под windows/linux, в случае распространения бинарников, можно просто положить необходимые dll/so рядом и исполняемым файлов, но в Mac OS X они распространяются в виде бандла (директория с определённой структурой и суффиксом .app). Так вот, что бы собрать всё нужные библиотеки в бандл, разработчики Qt сделали утилиту macdeployqt, которую, после сборки, достаточно натравить на полученное приложение так:

macdeployqt helloworld.app

Тут человек с ником Ayoy, тоже озадачивался подобными вопросами, и рассмотрел более подробно. Так же, он столкнулся с тем, что если используются библиотеки/фреймворки которые используют Qt, после обработки macdeployqt они будут продолжать ссылаться на системные, а не те, что в бандле. Что бы это исправить он написал скрипт на перл, которые позволяет это исправлять: http://gist.github.com/109674

Чуть позже поставлю в виртуалку Mac OS X, посмотрю, может на будущее буду сам делать бандлы, а ещё заинтересовала кросс-компиляция для макоси :)

Oct 13, 2010 - 1 minute read - linux

Пара замечаний

Замечание 1: Qt Creator (одна из последних git сборок)

При включенном отображении Outline в левой панели, при работе появляются значительные тормоза даже на небольших проектах (при моих 1024Мб RAM и Atom 1.6Гц). Решение: выбрать другой режим, тем более что в значительный промежуток времени эта панель вообще не нужна (убирается и вновь показывается при помощи Alt-0), да и есть мощный инструмент Locate (Ctrl-K)

Замечание 2: sshfs и не уходим в sleep

Я активно пользуюсь sshfs для подключения удалённых ресурсов, удобно, быстро, не нужно дополнительных плясок. Недавно стал наблюдать, что система при каких-то условиях перестала засыпать на нетбуке. Опытным путем выяснилось условие: ресурс, примонтированный при помощи sshfs, был отлючен с использованием опции lazy у fusermount (иначе ругался на Resource busy). При этом продолжал висеть процесс sshfs, его убийство после, опять позволяло уводить систему в sleep.

Oct 11, 2010 - 1 minute read -

Crowns 0.5.0

Вышла версия 0.5.0 программы Crowns для построения проекций крон деревьев. Скачать можно тут

В этой версии, основные изменения, касающиеся функционала в целом:

  • Добавлена возможность удалять подложку из проекта.
  • Добавлена возможность экспорта параметров крон деревьев в формат, пригодный для обработки в математических программах типа Octave (100% проверено), Scilab (проверено частично), Mathlab (теоретически должно работать). Т.к. проекции теперь строятся при помощи кривых Безье, то при экспорта с точностью 0.1 выдаются и промежуточные точки для построения полной проекции, теоретически, после обработки данные будут пригодны для загрузки в GIS.
  • Исправлена ошибка, при которой подложка не удалялась при открытии проекта без оной или создании нового проекта.
  • Исправлена ошибка, при которой случайное нажатие клавиши Esc приводило к закрытию окна программы.

Другие изменения, касающиеся технических аспектов разработки:

  • Исправлены вспомогательный скрипты для отстройки и паковки win32 версии из среды Linux.
  • Был осуществлен переход на систему сборки CMake.
  • Исправлено не критическое поведение с float типами при сохранении проекта: значения сохранялись как @Variant(..).

Полный список изменений: ChageLog

Oct 9, 2010 - 1 minute read - programming

Документация по GCC

На правах мемориза.

Тут лежит полная и последняя: http://gcc.gnu.org/onlinedocs/ в различных форматах, берём то, что нужно, а в системе пользуемся инфо

А здесь полезная информация от гентоводов: http://en.gentoo-wiki.com/wiki/Safe_Cflags - безопасные флаги оптимизация для различных процессоров (далее по тексту - ссылки)

Oct 2, 2010 - 9 minute read - programming

Цветовое пространство YUV

Многим знакомо цветовое пространство RGB (Red/Green/Blue), мне потребовалось же работать с входными данными пространства YUV, которое широко используется в семействе кодеков MPEG.

Sep 28, 2010 - 1 minute read -

FlashBlock в Opera

Полезная ссылка: http://my.opera.com/Lex1/blog/flashblock-for-opera-9/

даны различные рецепты, в том числе очень удобный для Opera 10.5+: просто включить опцию EnableOnDemandPlugin, для чего нужно открыть настройки: opera:config#UserPrefs|EnableOnDemandPlugin, опция автоматически добавится, и можно её включить. Да, это будет работать для любых плагинов.

Sep 16, 2010 - 1 minute read - linux туризм maps

OpenSource #068

А в нем и моя очередная статья “QLandKarte GT как замена OziExplorer в GNU/Linux” (название откорректировано редактором, но не суть). Рассматривается вопрос использования данных, подготовленных для использования в OziExplorer (или созданных ими), коих на просторах интернетов премножество, в среде Linux, на примере QLandKarte GT.

Скачать: http://osa.samag.ru/get/OpenSource068.zip

Sep 15, 2010 - 1 minute read - life

WebMoney и Альфа Банк

Стоимость (полная) перевода WM -> Alfa-click - 2.8%, обратно - 1%

Привязка осуществляется через Альфа-Клик, предварительно в WM нужно получить формальный аттестат ( http://passport.webmoney.ru), после чего нужно в секции “Мои документы” закачать сканы или снимки:

  • разворота паспорта с фотографией
  • разворота паспорта с пропиской
  • ИНН

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

Если возникнут проблемы, можно спросить в этой теме: Привязка к Альфа-банку.

Из вышеуказанной темы, уверяют, что для сверки используется информация о номере паспорта и ФИО, так что следите, что бы они были корректными (я, при заполнении анкеты в банке, нашел несколько, в т.ч. в имени, так что будьте бдительны).

Несколько ссылок:

Те же самые операции с Яндекс.Деньгами прошли менее болезненно, при условии, что паспортные данные в системе ЯД уже предоставлены (там только ничего никуда не нужно сканировать и выкладывать)