баг в poopen ?

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
Аватара пользователя
noch
постоялец
Сообщения: 145
Зарегистрирован: 07.06.2005 09:45:49
Откуда: Armenia
Контактная информация:

Сообщение noch »

Начиная с версии 1.9.8 кажись я стал замечать проблемы в работе Shell и popen

Конкретная задача.

uses baseunix, unix, sysutils;
var f : textfile;
s : string;
begin
s := 'rpmbuild -ba /usr/src/redhat/SPECS/mplayer.spec';
repeat popen (f, s, 'R');
readln (f, s);
writeln (s);
until eof(f);
close (f);

end.

ошибка:

root@localhost ~]# ./test Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.95080 + umask 022 + cd /usr/src/redhat/BUILD + LANG=C + export LANG + unset DISPLAY + cd /usr/src/redhat/BUILD + rm -rf MPlayer-1.0pre7 + /usr/bin/bzip2 -dc /usr/src/redhat/SOURCES/MPlayer-1.0pre7.tar.bz2 + tar -xvvf - /bin/sh: -c: line 0: syntax error near unexpected token `%prep' /bin/sh: -c: line 0: `Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.95080'

error: Bad exit status from /var/tmp/rpm-tmp.8267 (%prep)

Однако если запустить строку в шелле никаких проблем, все компилится до конца.

Спасибо
Uniser
новенький
Сообщения: 46
Зарегистрирован: 13.05.2005 23:13:57
Откуда: Украина, Полтава

Сообщение Uniser »

А если попробовать

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

popen (f, s, 'R'); repeat  
Аватара пользователя
noch
постоялец
Сообщения: 145
Зарегистрирован: 07.06.2005 09:45:49
Откуда: Armenia
Контактная информация:

Сообщение noch »

Конечно же я так и писал ;)


Это здесь набрал пример и ошибся ;)
Ответить