Апрель 2007

Обсуждение журнала LinuxFormat
(форум переехал, здесь только архив)
Аватара пользователя
LU™
Сообщения: 876
Статус: непримиримый
ОС: openSuse 11,1+factory
Контактная информация:

Re: Апрель 2007

Сообщение LU™ »

Val писал(а):
20.06.2007 11:16
В русском - нет


таки жаль.....
продолжение вопроса: а планируется? -)
Люди тратили часы, дни, месяцы своего веремени и труда, чтобы создать это (софт) для Вас и дарят это Вам, найдите, пожалуйста, 15 минут времени, чтобы прочитать документацию и научиться это использовать!
Спасибо сказали:
Аватара пользователя
Val
Ведущий рубрики
Сообщения: 2211
Статус: Редактор LXF

Re: Апрель 2007

Сообщение Val »

LU™ писал(а):
21.06.2007 02:58
Val писал(а):
20.06.2007 11:16
В русском - нет


таки жаль.....
продолжение вопроса: а планируется? -)

В принципе, можно.
"Если думаешь, говоришь, пишешь и подписываешь - не удивляйся." (с)
Спасибо сказали:
Сергий
Сообщения: 89

Re: Апрель 2007

Сообщение Сергий »

Способ "воскрешения" апрельского диска случайно не отыскался ?
Спасибо сказали:
Аватара пользователя
Val
Ведущий рубрики
Сообщения: 2211
Статус: Редактор LXF

Re: Апрель 2007

Сообщение Val »

Сергий писал(а):
14.10.2007 16:12
Способ "воскрешения" апрельского диска случайно не отыскался ?

Увы, нет :(
"Если думаешь, говоришь, пишешь и подписываешь - не удивляйся." (с)
Спасибо сказали:
blaster
Сообщения: 78
Контактная информация:

Re: Апрель 2007

Сообщение blaster »

Здравствуйте.
У меня есть номер LXF2007 года, в нём меня заинтересовала статья dh_make: Сборка Deb-пакетов. На страницах 74-75 есть код "скрипта, который придумали разработчики Debian". Хоть тресните, обыскав весь интернет не нашёл такого скрипта от разработчиков Debian. На диске тоже...
Дело в том, что при его выполнении возникает ошибка:

Код: Выделить всё

./brrr: line 3: ошибка синтаксиса около неожиданной лексемы `('
./brrr: line 3: `perl -pe 's!.* open\(\"([^\"]*).*!$1!' |\'

Сам скрипт:

Код: Выделить всё

strace -f -o /tmp/log ./configure
for x in 'dpkg -S $(grep open /tmp/log|\
perl -pe 's!.* open\(\"([^\"]*).*!$1!' |\
grep "^/"| sort | uniq|\
grep -v "^\(/tmp\|/dev\|/proc\)" ) 2>/dev/null|\
cut -f1 -d":"| sort | uniq'; \
do \
echo -n "$x (>=" 'dpkg -s $xlgrep ^Version|cut -f2 -d":"' "), "; \
done

Может кто из авторов или издателей скопирует код из оригинальной pdf сюда?
Спасибо сказали:
Аватара пользователя
Val
Ведущий рубрики
Сообщения: 2211
Статус: Редактор LXF

Re: Апрель 2007

Сообщение Val »

blaster писал(а):
22.12.2007 17:47
Может кто из авторов или издателей скопирует код из оригинальной pdf сюда?


Нет проблем

Код: Выделить всё

strace -f -o /tmp/log ./configure
# or make instead of ./configure, if the package doesn’t use
autoconf
for x in `dpkg -S $(grep open /tmp/log|\
perl -pe ‘s!.* open\(\”([^\”]*).*!$1!’ |\
grep “^/”| sort | uniq|\
grep -v “^\(/tmp\|/dev\|/proc\)” ) 2>/dev/null|\
cut -f1 -d”:”| sort | uniq`; \
do \
echo -n “$x (>=” `dpkg -s $x|grep ^Version|cut -f2 -d”:”` “), “; \
done

Хотя, похоже, ошибка как раз в нем - perl -pe `' должен иметь вид perl -pe ''
"Если думаешь, говоришь, пишешь и подписываешь - не удивляйся." (с)
Спасибо сказали:
blaster
Сообщения: 78
Контактная информация:

Re: Апрель 2007

Сообщение blaster »

Val, спасиб. К сожалению ошибки скрипт всё равно выдаёт (даже с разными кавычками :)). Как думаете, лучше всего наверно будет связаться непосредственно с автором Грэмом?
Спасибо сказали:
Аватара пользователя
Val
Ведущий рубрики
Сообщения: 2211
Статус: Редактор LXF

Re: Апрель 2007

Сообщение Val »

blaster писал(а):
22.12.2007 18:42
Val, спасиб. К сожалению ошибки скрипт всё равно выдаёт (даже с разными кавычками :)). Как думаете, лучше всего наверно будет связаться непосредственно с автором Грэмом?

Я так думаю ,что Грэм сейчас наряжает x-mas tree для своего годовалого сына и вряд ли озаботится скриптом до 2 января :) А какую ошибку выдает?
"Если думаешь, говоришь, пишешь и подписываешь - не удивляйся." (с)
Спасибо сказали:
blaster
Сообщения: 78
Контактная информация:

Re: Апрель 2007

Сообщение blaster »

Val, Хех, ну если оставить оригинальный код без изменений (только убирая закомментированную строку), то ошибка будет вот такая:

Код: Выделить всё

./brrr: line 8: ошибка синтаксиса около неожиданной лексемы `('
./brrr: line 8: `echo -n “$x (>=” `dpkg -s $x|grep ^Version|cut -f2 -d”:”` “), “; \'

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

Код: Выделить всё

./brrr: line 3: ошибка синтаксиса около неожиданной лексемы `('
./brrr: line 3: `perl -pe 's!.* open\(\"([^\"]*).*!$1!’ |\'
Спасибо сказали:
Аватара пользователя
Val
Ведущий рубрики
Сообщения: 2211
Статус: Редактор LXF

Re: Апрель 2007

Сообщение Val »

Странно, у меня оно никаких ошибок не вызывает. Сразу оговорюсь - ничего Debian-based под рукой нет, тестировал на Mandriva с dpkg в виде заглушки, но никаких ошибок синтаксиса не заметил. Вот код, прямо из файла:

Код: Выделить всё

for x in `./dpkg -S $(grep open /tmp/log|\
perl -pe 's!.* open\(\”([^\”]*).*!$1!' |\
grep "^/" | sort | uniq|\
grep -v "^\(/tmp\|/dev\|/proc\)" ) 2>/dev/null|\
cut -f1 -d":" | sort | uniq`; \
do \
echo -n "$x (>=" `./dpkg -s $x|grep ^Version|cut -f2 -d ":"` "), "; \
done

Типографских двойных кавычек не должно быть нигде. Имейте также в виду, что между \ в конце строки и собственно переводом строки ничего стоять не должно.
"Если думаешь, говоришь, пишешь и подписываешь - не удивляйся." (с)
Спасибо сказали:
blaster
Сообщения: 78
Контактная информация:

Re: Апрель 2007

Сообщение blaster »

Val, хм, даже и не знаю, что сказать. Ввожу код, что выше на два поста - не работает, а ваш, прямо выше моего - всё нормально :unsure: Хотя и не выводится список зависимостей (но наверное тут от собираемой программы тоже зависит). Вроде что-то кавычки глючат (набираю текст в gedit).
Вообщем большущее спасибо, никогда не забуду.
Спасибо сказали:
Аватара пользователя
Val
Ведущий рубрики
Сообщения: 2211
Статус: Редактор LXF

Re: Апрель 2007

Сообщение Val »

blaster писал(а):
22.12.2007 23:27
Val, хм, даже и не знаю, что сказать. Ввожу код, что выше на два поста - не работает, а ваш, прямо выше моего - всё нормально :unsure: Хотя и не выводится список зависимостей (но наверное тут от собираемой программы тоже зависит). Вроде что-то кавычки глючат (набираю текст в gedit).

Там не совсем понятно написано в начале - первые две строки. Имеется в виду следующее - вы собираете программу при помощи strace -f -o /tmp/log ./configure вместо стандартного ./configure, потом направливаете на полученный файл /tmp/log этот самый злополучный скрипт.
Естественно, если вместо ./configure программа используетнечто другое, strace надо подменить соответствующим образом - главное, посмотреть, к чему именно пытается обращаться кандидат на упаковку.

Вообщем большущее спасибо, никогда не забуду.

Не за что
"Если думаешь, говоришь, пишешь и подписываешь - не удивляйся." (с)
Спасибо сказали:
Закрыто