20.02.2011

Создание rpm пакетов для 1С-Предприятие из postgresql-9.0.1-1.1C.src.rpm в Linux OpenSUSE 11.2 x86

Через Yast или вручную ставим пакеты libicu-devel, icu.
Создаем ссылки:
ln -s /usr/lib/libicuuc.so /usr/local/lib/libicuuc.so.34
и т.д.:
ln -s /usr/lib/libicu*.so /usr/local/lib/libicu*.so.34

иначе на этапе сборки пакета будет ошибка:
+ install -m 0755 /usr/local/lib/libicui18n.so.34 /usr/src/packages/BUILDROOT/postgresql-9.0.1-1.1C.i386/usr/pgsql/lib/
install: невозможно выполнить stat для `/usr/local/lib/libicui18n.so.34': Нет такого файла или каталога
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.UZrbuE (%install)

Ошибки сборки пакетов:
Неверный код возврата из /var/tmp/rpm-tmp.UZrbuE (%install)

Перед сборкой надо установить зависимости:

rpmbuild -ba --define 'runselftest 0' /usr/src/packages/SPECS/postgresql-9.0-1C.spec
error: Failed build dependencies:
glibc-devel is needed by postgresql-9.0.1-1.1C.x86_64
bison is needed by postgresql-9.0.1-1.1C.x86_64
flex is needed by postgresql-9.0.1-1.1C.x86_64
readline-devel is needed by postgresql-9.0.1-1.1C.x86_64
zlib-devel >= 1.0.4 is needed by postgresql-9.0.1-1.1C.x86_64
openssl-devel is needed by postgresql-9.0.1-1.1C.x86_64
pam-devel is needed by postgresql-9.0.1-1.1C.x86_64

Устанавливаем postgresql-9.0.1-1.1C.src.rpm
После этого выполняем:
rpmbuild -ba --define 'runselftest 0' /usr/src/packages/SPECS/postgresql-9.0-1C.spec

если возникает ошибка вида:

Patch #1 (rpm-pgsql.patch):
+ /bin/cat /usr/src/packages/SOURCES/rpm-pgsql.patch
+ /usr/bin/patch -s -p1 --fuzz=0
1 out of 5 hunks FAILED -- saving rejects to file src/Makefile.global.in.rej
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.CnAouD (%prep)

Ошибки сборки пакетов:
    Неверный код возврата из /var/tmp/rpm-tmp.CnAouD (%prep)

то в /usr/lib/rpm/macros находим строку
%_default_patch_fuzz 0
и меняем ее на

%_default_patch_fuzz 2

Читать далее...