LINUX.ORG.RU

Сообщения php-coder

 

[SHELL] Проверить, что переменная это число

Форум — Development

Здравствуйте!

Есть следующий кусок кода:

elif ! printf '%s\n' "$1" | grep '^[[:digit:]]\+$'; then
echo "Wrong number of test ($1). Should be a digit! Skipped." >&2
shift

Но при запуске в стандартном sh на SunOS вижу ругань:

./run_test.sh: !: not found

Как бы этот код сделать более портабельным?

(Пробовал grep -v, пробовал менять регулярное выражение на '^[^[:digit:]]\+$', но пока ничего не вышло..)

Заранее спасибо!

 

php-coder
()

Doxygen: string vs std::string

Форум — Development

Здравствуйте!

Как бы объяснить Doxygen'у, что string в файле реализации и std::string в хедере это один и тот же тип?

Искал в гугле, но безрезуальтатно. Нашел опцию BUILTIN_STL_SUPPORT, но она совсем другое включает.

>>>

php-coder
()

test.sh: bad substitution

Форум — Development

Здравствуйте!

При попытке запустить скрипт на SunOS 5.10 в стандартном sh заткнулся на одной ошибке. Вот упрощенный вариант:

#!/bin/sh
NO=
if [ ${#1} -le 2 ]; then
   NO="`printf '%03d\n' $1`"
else
   NO="$1"
fi
echo $NO

При попытке запустить:

$ ./test.sh
./test.sh: bad substitution

$ sh -x ./test.sh
NO=
./test.sh: bad substitution

Как это исправить?

Пробовал выяснять длинну строки с помощью expr, но тоже не получилось.

Заранее спасибо!

>>>

php-coder
()

Условный вызов AC_CHECK_HEADER

Форум — Development

Здравствуйте!

Хочу сделать следующее: в configure скрипте, если указана опция --enable-boost проверить на присутствие хедер boost/scoped_array.hpp (а в будущем и некоторые другие) и хотелось бы, чтобы если его нет, то configure "падал".

Для начала, чтобы просто искалось:

AC_MSG_CHECKING(whether we are using boost)
AC_ARG_ENABLE(boost,
    AS_HELP_STRING([--enable-boost], [use boost library during build]),
    [enable_boost=yes],
    [enable_boost=no])
AC_MSG_RESULT($enable_boost)
if test "$enable_boost" = "yes"; then
    # TODO: configure should fails if one of needed headers not found
    AC_CHECK_HEADER([boost/scoped_array.hpp])
    AC_DEFINE([ENABLE_BOOST], [], [use boost library])
fi

С --enable-boost всё работает, ищется, а вот без опций configure не проходит:

checking whether we are using boost... no
configure: error: conditional "am__fastdepCC" was never defined.
Usually this means the macro was only invoked conditionally.

Как бы победить? Или это невозможно и хедеры нужно чекать безусловно?

В гугле искал, но там всё больше находились configure скрипты, которые выдавали эту ошибку.

Заранее спасибо за помощь.

>>>

php-coder
()

[C] Как получить статус завершения треда

Форум — Development

Здравствуйте!

Не могу понять как правильно вернуть из треда его статус завешения и как этот статус получить в main().

pthread_exit() или return из треда должны возвращать указатель на void. Но при этом переменная не может быть локальной, в итоге остаётся либо возвращать адрес глобальной переменной, либо выделять память на куче и возращать адрес на неё.

Второе очень странно и не логично, потому что городить вызовы malloc(), и потом free() в главном потоке, только для того чтобы только получить код завершения это overhead.

А если возвращать указатель на глобальную переменную, то какой смысл в этих pthread_exit() если можно просто установить глобальную переменную в нужнозе значение и всё?

Как-то нелогично IMHO сделано. Объясните, пожалуйста.

P.S. Был в гугле со словами "pthread_exit() get status"

>>>

 

php-coder
()

Fluxbox 1.0.0 released!

Новости — Open Source
Группа Open Source

После четырёх с половиной лет разработки вышла новая стабильная версия лёгкого и быстрого оконного менеджера Fluxbox -- 1.0.0!

Добавлены новые темы, обновлены переводы, возвращены обратно внешние табы, исправлено множество ошибок, обновлён ман, добавлены новые команды...

Поздравляю всех пользователей этого WM со столь замечательным и долгожданным событием! Ура! :)

>>> Список изменений

>>> Скачать!

php-coder
()

Что значит warning: creating a DT_TEXTREL in a shared object?

Форум — Development

Здравствуйте!

При сборке разделяемой библиотеки вижу предупреждение:

gcc -Wall -W -g -c -o src/drop/libkatrin-drop.o src/drop/libkatrin-drop.c -I./src
gcc -Wall -W -g -c -o src/utils/utils.o src/utils/utils.c -I./src
gcc -Wall -W -g -c -o src/conf/conf.o src/conf/conf.c -I./src
gcc -Wall -W -g -shared -fPIC -Wl,-export-dynamic -o ./build/libkatrin-drop.so src/drop/libkatrin-drop.o src/utils/utils.o src/conf/conf.o
/usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Что означает это предупреждение и как его побороть? (В гугле искал, но ответа не нашел.)

Надеюсь на вашу помощь. Заранее благодарю!
php-coder
()

Запуск иксовой программы по SSH

Форум — Admin

Здравствуйте!

Устал уже читать пользоваться багзиллой в links'е и посему очень бы хотел получить ответ на следующий вопрос: возможно ли запустить какой-нибудь графический браузер у себя на машине по SSH, причем между моим компом и тем, на который я хожу есть ещё один промежуточный и на него я тоже по SSH. Короче говоря, я со своей машины A иду по SSH на B, а потом с B опять же по SSH на С. И вот с машины C я и хотел бы запустить браузер.

Как это сделать? Пожалуйста, подскажите.

php-coder
()

Редизайн сайт NetBSD.org

Новости — Open Source
Группа Open Source

Официальный сайт проекта NetBSD подвергся редизайну.

>>> Оценить

php-coder
()

Помогите написать правило для procmail

Форум — General

Здравствуйте!

Хочу сделать, чтоб procmail сбрасывал в отдельный файл хедеры от всех писем, поискал в инете, почитал доку, пытаюсь сделать так:

:0ch
| >> testmail

Но в файле testmail никаких хедеров не появляется. Подскажите, что я сдела не так?

Спасибо.

php-coder
()

OpenBSD справляет юбилей — 11 лет!

Новости — BSD
Группа BSD

18 октября OpenBSD исполнилось 11 лет.

Чтобы ни говорили на ЛОРе, а эта операционная система жива, разивается и всё ещё безопасна :)

Ура!

>>> Happy Birthday OpenBSD!

php-coder
()

Создание функциональных тестов

Форум — Development

Здравствуйте!

Задумался над идеей добавления тестов для своей программы. Посмотрел на DejaGNU, день убил, но так и не смог разобраться, в частности с Expect'ом. Решил написать что-нить простенькое под себя. Пишу на шелле. Банально сохраняю вывод программы в файл и сравниваю с эталонным.

Хотелось бы услышать советов/предложений о том, как лучше писать тесты, на чем. Я не против использования сторонней программы, но главный критерий -- простота, чтобы я быстро смог разобраться и в т.ч. понимал, что она делает.

Спасибо.

php-coder
()

Привет из тёмной консоли!

Галерея — Скриншоты

После покупки ноута был сильно расстроен, что на нём отсутствует клавиша Win -- на неё у меня были навешаны почти все хоткеи. Первое время сидел в консоли (благо заработал framebuffer) и время от времени пытался настроить клавишу Fn. Потом понял, что это невозможно и смирился -- сижу в консоли. Как правило, хватает 4ёх. Слушаю музыку с помощью mpd+ncmpc. Пишу код в vim'е (7ой просто великолепен!), отлаживаю и в SVN коммичу. zsh также очень помогает.

Кстати, на скриншоте в самом вверху можно увидеть фишку 7-ёрки -- табы :) Пока не очень активно их использую, но пытаюсь себя к ним приучить.

Тема delek (:colorsheme delek). (Синие полосы почему-то нисколько не бьют по глазам.)

P.S. Я не хакИр -- сам удивлён, что скатился до такого :-/

>>> Просмотр (1024x768, 25 Kb)

php-coder
()

Вышел Fluxbox 1.0rc!

Новости — Open Source
Группа Open Source

Сегодня Henrik Kinnunen, главный разработчик Fluxbox, сообщил о выходе новой версии оконного менеджера Fluxbox -- 1.0rc

Из самых значимых изменений стОит отметить возврат к внешним табам (как было в 0.1.14), улучшенная поддержка EWMH, а также множество исправленных багов. Также сообщается о полной поддержке UTF8 и, хочется надеяться, что проблем с кодировками больше не возникнет.

Список изменений: http://fluxbox.org/version-0.9.php

>>> Скачать!

php-coder
()

Реально ли использовать клавишу Fn в IBM ThinkPad?

Форум — Desktop

Имею ноутбук IBM ThinkPad R50e.

ООЧЕНЬ не хватает клавиши Win, на которую у меня были навешаны почти все хоткеи. Оказался как без рук =(

Интересует вопрос реально ли использовать клавишу Fn как Win ? Т.е. чтобы при нажатии Fn+a открывался aterm? Проглядел файлы из пакета к tpb и так понял, что это невозможно, но не хочу в это верить :-(

Если невозможно, то посоветуйте на что можно перевешать хоткеи?

Спасибо.

php-coder
()

Помогите с выбором ноутбука

Форум — Linux-hardware

Планирую на этой неделе купить себе ноутбук. Был бы рад услышать советы от тех, кто уже имеет ноут. Сразу скажу, что хотелось бы уложиться в ~28 000 рублей, лучше меньше :)

Играть на нём не собираюсь. Важно, чтобы не было проблем с Линуксом, так как это будет единственная ОСь на нём. Желательно винт на гиг 80 и оперативки 512 Мб :) И ещё бы DVD чтобы записывать умел. Вроде больше и не надо мне :)

Возможно ли взять ноут, чтобы и хороший и за такую сумму?

php-coder
()

getenv() vs getpwuid()

Форум — Development

Требуется из программы получить значение $HOME.

Нахожусь в раздумьях, как это лучше и оптимальнее сделать: использовать переменную окружения, с помощью getenv() или же считать из /etc/passwd, с помощью getpwuid(geteuid()) ?

Хотел узнать у вас, разработчики, какой путь использовали бы вы? Интересуют два аспекта: наибольшая безопасность и скорость. Мне почему-то кажется, что вариант с getenv() быстрее, а читать из /etc/passwd более безопасно.

Что скажете?

php-coder
()

Цвета в irssi

Форум — Desktop

Снёс Xchat и поставил irssi. Столкнулся с двумя пока проблемами:

- когда кто-то на канале пишет /me, то его сообщение recode не перекодирует. Known bug ? Может патч кто видел?

- сверху (тема) и снизу панель синим цветом. Мне очень не нравится и бьёт по глазам. Пожалуйста, подскажите как это изменить. Что-то в доке на сайте не понял как это сделать и можно ли...

И ещё как узнавать что тебе что-то сказали на другом канале? Как канал в автозагрузку добавить?

php-coder
()

Кодер за работой

Галерея — Скриншоты

Потихоньку делаю патч для Флакса (см. http://freesource.info/wiki/TZ/fluxbox/GettextSupport), и вот что-то ни с того ни с сего пришла идея показать вам моё рабочее место прям как есть. Т.е. без украшательств и декораций.

На фоне играет музыка, это mpd старается :)

>>> Просмотр (1024x768, 209 Kb)

php-coder
()

valgrind: как его использовать-то?

Форум — Development

Что-то не могу разобраться как с этим зверем-то работать? В частности, не ясен его вывод и где он ошибки углядел. Вот, к примеру:

==11361== 125 errors in context 25 of 51:
==11361== Conditional jump or move depends on uninitialised value(s)
==11361==    at 0x80D1A9D: MenuCreator::createWindowMenuItem(std::string const&, std::string const&, FbTk::Menu&) (basic_string.h:2099)
==11361==    by 0x80D65ED: MenuCreator::createMenuType(std::string const&, int) (new_allocator.h:62)
==11361==    by 0x807DE4E: BScreen::initMenus() (new_allocator.h:62)
==11361==    by 0x806A608: Fluxbox::initScreen(int) (fluxbox.cc:464)
==11361==    by 0x806D3D2: Fluxbox::Fluxbox(int, char**, char const*, char const*) (stl_vector.h:462)
==11361==    by 0x80787AB: main (basic_string.h:1456)

Что бы это могло значить? Есть где объяснение?

Использую слегка старую версию -- 2.4.0, но скоро новую попробую. Запускал с ключами -v --leak-check=full
php-coder
()

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