Как показать стандартный маковский wait-курсор, в виде вращающегося разноцветного мячика? Если вызывать QApplication::setOverrideCursor(Qt::WaitCursor), то показывается какой-то уродливый чёрно-белый курсорчик. Если вообще показывается - в некоторых версиях Qt баг, из-за которого этот вызов игнорируется под Mac OS.
Разрабатываю кроссплатформенную программу на Qt. Попиксельная обработка изображений через интерфейс класса QImage. И вот засада: падает при входе в рекурсивную функцию, но только на Маке. Казалось бы, стек увеличь? Увеличивал до невероятных размеров, при помощи QMAKE_LFLAGS += -Wl,-stack_size,0x10000000 - никакого влияния. Да и глубина вызовов на момент падения не такая уж большая, порядка 3000, функция лёгкая.
Диагностика: Bus error.
Не встречался никто с таким? Что бы это могло быть?
Вакансия: Системный администратор Уровень дохода: от 50 000 до 80 000 руб. в месяц
Город Москва
Ближайшее метро: Цветной бульвар
Тип работы Полный рабочий день
Место работы на территории работодателя Заработная плата "белая", оформление по ТК, работа в дружном коллективе. Должностные обязанности
1) Администрирование системы контроля версий (Subversion, Git) и Continuous Integration tools.
2) Установка, настройка и администрирование инструментария разработчика (компиляторы, отладчики, профилировщики и т.д.).
3) Развертывание и поддержание сетевой инфраструктуры:
a. Развертывание и администрирование до 5 Linux серверов.
b. Развертывание и администрирование до 50 Linux/Windows рабочих станций.
c. Администрирование файл сервера и сервера печати.
d. Администрирование веб сервера.
e. Развертывание и администрирование системы резервного копирования.
f. Общая база данных пользователей (LDAP);
g. Почтовый сервер (синхронизация с Outlook, совместный доступ к календарям и задачам, поддержка мобильных устройств, веб-доступ);
h. VPN сервер;
i. Разработка предложений по улучшению инфраструктуры;
4) Поддержка внутренних пользователей. Требования к квалификации
1) Опыт администрирования Linux систем не менее 2х лет (Bind, DHCP, Samba, LDAP, Apache, postfix, CyrusIMAP, Zimbra (опционально), MySQL).
2) Языки написания сценариев (Python or perl, bash).
3) Опыт администрирования Windows рабочих станция (Window XP/Vista).
4) Опыт установки, администрирования, конфигурирования и поддержки систем контроля версий и continuous integration tools более 3х лет (Hudson, SVN, Git, buildbot).
5) Знание систем сборки (Ant/Maven, CMake, make).
6) Знание систем учёта ошибок (Trac, Jira).
7) Хорошие письменные и устные коммуникативные навыки.
8) Самомотивированность, ответственность, способность учиться и решать сложные проблемы самостоятельно.
С некоторых пор у меня появилось нечто вроде хобби - устанавливать Linux на всё, что под руку попадётся. На этот раз под руку попался UMPC xDevice Sinapse T-770. По умолчанию там стояла Виста, которая после ряда экзекуций отправилась туда, где ей самое место - в /dev/null.
Установил ArchLinux. Настроил всё, что было интересно - тачскрин, wifi, звук, видео... В устройстве ещё bluetooth и камера. WindowMaker, в котором я когда-то жил, со своими большими кнопками оказался удобен для тыкания стилусом.
Диагональ 7 дюймов, разрешение 800x480. Можно полазить в интернете. Можно почитать. Можно поиграть. Можно посмотреть кино. И так далее...
>>> Просмотр ( 1634x996, 456 Kb )
Вот моя мрачная берлога :)
Корпус - Antec 182.
Монитор - NEC 20WGX2 Pro.
Клавиатура - Microsoft Natural 4000.
Трекбол - Logitech Marble Mouse.
Наушники - Sennheiser.
Ибук - Sony Reader PRS-505.
MP3-player - iriver e10.
Десктоп показан ранее - http://www.linux.org.ru/view-message.jsp?msgid=2707369
>>> Просмотр ( 1024x768, 262 Kb )
Купил в "Связном" игрушку за 14000 р., продаваемую под названием xDevice Sinapse T-770, хотя это известная с 2007 модель от Amtek; раньше стоили слишком дорого. Это UMPC с экраном 7", разрешением 800x460, без клавиатуры, соответственно с тачскрином.
По умолчанию стояла Vista, которая была подвергнута нечеловеческим экспериментам и погибла в синем экране.
Встал вопрос: какой Linux лучше всего подходит для такого компьютера? Надо, чтоб заработал тачскрин и WiFi - это программа-минимум.
Первое, что приходит в голову - Ubuntu.
Собираю новый крутой супер-пупер комп. На старом стоит давно настроенная Gentoo. Как проще всего скопировать систему на новый, чтобы получить сразу работающую? Или не имеет смысла, и практичнее устанавливать с нуля, копируя отдельные настройки по надобности?
На старом Athlon XP 1500+, на новом Athlon 64 X2 5600+. В принципе, всё должно продолжать работать =), и постепенно можно будет перекомпилировать систему с новыми флагами.
Как заставить cmake генерировать обёртку свигом? Имеются файлы: func.i, func.h, func.cpp. Вызовом swig func.i создаётся файл func_wrap.c. Всё хорошо, но как автоматизировать это дело при помощи cmake?
Есть пример в faq http://www.cmake.org/Wiki/CMake_FAQ , но не работает, начиная с того, что вставка FIND_PACKAGE (SWIG REQUIRED) в CMakeLists.txt выдаёт ошибку "CMake Error: Swig was not found on the system. Please specify the location of Swig.", хотя и cmake, и swig корректно установлены через emerge (дело происходит в Gentoo).
Обдумываю новый home project, что-то вроде специализированной CAD-системы, довольно навороченной - развитая система команд, импорт-экспорт различных текстовых данных, GUI... Какие встраиваемые языки сейчас в моде? TCL, ессно, не предлагать.
У меня душа лежит к CL или Scheme. Примеры работоспособных реализаций:
ECL - http://ecls.sourceforge.net
Guile - http://www.gnu.org/software/guile/guile.html
Будут какие-нибудь размышлизмы? ;)
FVWM: Плоский Мир. Пять лет спустя.
http://www.linux.org.ru/view-message.jsp?msgid=393807
Ну что ж, выбранный стиль оказался жизнеспособным. Только компьютеры стали быстрее, мониторе - шире (кстати, рекомендую NEC 20WGX2 Pro), vim сменился на Emacs, links - на Firefox, C++ - на Java.
Десктоп домашний. На работе Windows, deeply customized до юзабельного состояния (Emacs+cygwin+dexpot), но это совсем другая история.
Забавно, насколько мало всё изменилось. По-прежнему нет бесполезных рамок у окон. 24 воркспейса, переключение Alt-F<номер>, Win-F<номер> и Win-<буква> для избранных приложений. Обычно на каждом воркспейсе ровно одно максимизированное окно (или несколько, если это многооконное приложение вроде пиджина). Наличие рамки и заголовка у окна - признак неиспользуемости данной программы :). Мышь используется очень мало, поэтому заменена трекболом Logitech Marble Mouse (на скрине не поместился =)).
Реализованы две killer-features. Первая - при переключении на конкретный воркспейс запускается "приписанное" к нему приложение, если ещё не запущено: lazy loading в действии. Вторая - последняя выполненная в xterm команда отображается в заголовке, что весьма удобно для локализации нужного терминала по пейджеру.
Места девать некуда, поэтому панель заполнена всякой фигнёй, огромными часами, великолепным стильным лого FVWM, самопальными оповещалками о новых сообщениях ICQ, Skype, рабочей и гугловой почты, а местами и совсем не заполнена :).
С нетерпением жду комментариев. Как приятно снова окунуться в спокойную, дружелюбную атмосферу ЛОРа, видеть эти улыбающиеся ясноглазые лица, пожимать эти мужественные, закалённые в борьбе руки! =)
>>> Просмотр ( 1680x1050, 288 Kb )
Попробовал создать файл ~/.fonts.conf
<?xml version="1.0"?> <fontconfig> <match target="font" > <test compare="more" name="size" qual="any" > <double>0</double> </test> <edit mode="assign" name="antialias" > <bool>false</bool> </edit> </match> </fontconfig>
но не помогло.
У меня возникла проблема с CVS, и я не могу понять, где баг - у меня или в CVS. Прошу помощи.
Имеется две ветки исходников проекта: B1 и B2. Первая активно развивается, вторая почти заморожена. Тем не менее во второй ветке есть фичи F1 и F2, которых нет в B1. Время от времени (примерно раз в два месяца) в ветке B1 ставится tag, и производится merge B1->B2 командой, запускаемой в песочнице B2:
cvs update -jtag1 -jtag2
Здесь tag1 старше tag2 по возрасту.
По моему разумению (см. manual http://www.network-theory.co.uk/docs/cvsmanual/cvs_61.html), должно произойти слияние кода B2 с изменениями в B1, которые накопились между моментами проставления tag1 и tag2. Вроде бы так оно и есть, но: фича F1 исчезает (хотя не должна), и что ещё более удивительно, фича F2 остаётся.
Замечены и другие странности, вроде конфликта без меток (два конфликтующих фрагмента наличествуют в тексте, но отсутствуют метки <<<<<<< и >>>>>>>).
В чём тут может быть дело?
Коркается в функции pthread_cond_wait многопоточная программа, собранная для 32, но запускаемая на 64. Если собрать для 64 - всё OK.
Кто-нибудь сталкивался с подобным? И насколько вообще здоровая идея - запускать 32-bit executable на 64-bit машине?
Как бы сконвертировать DjVu в набор картинок, где каждая картинка - "страница" определённого разрешения, скажем 590x472? Для PDF подобная задача решается утилитой pdfimages.
Кажется, ещё не было скриншота с Gnus'ом? Это читалка новостей / почтовик, написанная целиком на Emacs Lisp. Что даёт нам "эргономическое единство плюс мощное скриптование на халяву" (формулировка украдена у lg).
Надпись внизу экрана (в минибуфере XWEM) имеет некое диалектическое единство с читаемым обсуждением :)
>>> Просмотр ( 1024x768, 100 Kb )
Демонстрация некоторых нетривиальных штучек:
1. Mode-depending фоновое изображение.
2. Modeline активного окна отличается от остальных (thanks to lg, идея описана здесь: http://www.linux.org.ru/profile/hbee/view-message.jsp?msgid=887863 ).
3. Ошибки компиляции и ворнинги идут разным цветом (весьма помогает в работе).
4. Текстовое контекстное меню работы lg - заменяет обычное, чтобы не использовать мышь ( http://lgarc.narod.ru/xemacs/index.html ).
5. Наконец, давно муссируемая тема - smart completion а-ля MSVS.
Window manager - XWEM ( http://www.xwem.org ), конечно же!
Интересно, lg расшифровывается как Lisp Guru? :)
>>> Просмотр ( 1024x768, 91 Kb )
Демонстрация использования Лиспа для создания OpenGL программ. Драйвер на Лиспе (driver.lisp) управляет тупым движком на C++ (engine.cpp) через FIFO-файлы. Движок возвращает события ввода как s-выражения, готовые для интерпретации.
Почему для логической части проекта лучше использовать Лисп, а не C++? Да потому, что программы на C++ - машины, а программы на Лиспе - организмы :-)
Движок использует тулкит OGRE ( http://www.ogre3d.org ), драйвер написан на CMU CL ( http://www.cons.org/cmucl/index.html ).
На закуску, старинная народная ЛОРовская забава: угадай window manager :-)
>>> Просмотр ( 1024x768, 96 Kb )
Какова лучшая конфигурация для запуска XWEM?
Первое, что я получил (установив http://www.xwem.org/packages/xlib-current-pkg.tar.gz и http://www.xwem.org/packages/xwem-current-pkg.tar.gz) при ~/.xwem/xwemrc.el, содержащем только строчку (setf max-lisp-eval-depth 5000):
Symbol's value as variable is void: default-toolbar-visible-p
А при попытке M-x kill-emacs:
Wrong type argument: XSetInputFocus, X-Dpy-p, nil
Подписался на рассылку xwem-devel@xwem.org, но не хочу засорять её своими глупыми вопросами :-)
Ниже следует текущая конфигурация.
Если локально изменить CVS-controlled файл, то номер версии в modeline начинает выводиться при помощи face 'highlight. Это здорово, но хотелось бы уметь изменять этот face. Как бы исхитриться это сделать?
Для чего это нужно. Если шрифт в modeline мельче основного, то 'highlight там выглядит уродливо. Если же уменьшить 'highlight, то в основном тексте подсвеченные куски даются меньшим шрифтом - ещё хуже.
| ← предыдущие |