Сборка rpm пакета. (./configure: error: invalid option "--host=x86_64-redhat-linux-gnu)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Сборка rpm пакета.

Сообщение BigBrother »

Хочу собрать свой rpm пакет из тарбола со своими опциями.
Пересмотрел кучу документации, везде сказано, что добавьте в секцию %build свои опции и будет вас счастье. Сделал так

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

...
%prep
%setup -q

%build
./configure --prefix=/srv/nginx --without-http_scgi_module --without-http_uwsgi_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre=/root/rpmbuild/SOURCES/pcre-8.34 --with-pcre-jit
...

Потом запускаю

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

[root@rpm-build SPECS]# rpmbuild -ba nginx.spec

и получаю

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

Выполняется(%prep): /bin/sh -e /var/tmp/rpm-tmp.KJBsb9
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd /root/rpmbuild/BUILD
+ rm -rf nginx-1.4.4
+ /usr/bin/gzip -dc /root/rpmbuild/SOURCES/nginx-1.4.4.tar.gz
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd nginx-1.4.4
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Выполняется(%build): /bin/sh -e /var/tmp/rpm-tmp.g8fW80
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd nginx-1.4.4
+ CFLAGS='-O2 -g'
+ export CFLAGS
+ CXXFLAGS='-O2 -g'
+ export CXXFLAGS
+ FFLAGS='-O2 -g'
+ export FFLAGS
+ ./configure --host=x86_64-redhat-linux-gnu --build=x86_64-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info
./configure: error: invalid option "--host=x86_64-redhat-linux-gnu"
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.g8fW80 (%build)


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

Содержимое /var/tmp/rpm-tmp.g8fW8

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

#!/bin/sh

  RPM_SOURCE_DIR="/root/rpmbuild/SOURCES"
  RPM_BUILD_DIR="/root/rpmbuild/BUILD"
  RPM_OPT_FLAGS="-O2 -g"
  RPM_ARCH="x86_64"
  RPM_OS="linux"
  export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS
  RPM_DOC_DIR="/usr/share/doc"
  export RPM_DOC_DIR
  RPM_PACKAGE_NAME="nginx"
  RPM_PACKAGE_VERSION="1.4.4"
  RPM_PACKAGE_RELEASE="1.el6"
  export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE
  LANG=C
  export LANG
  unset CDPATH DISPLAY ||:
  RPM_BUILD_ROOT="/root/rpmbuild/BUILDROOT/nginx-1.4.4-1.el6.x86_64"
  export RPM_BUILD_ROOT

  PKG_CONFIG_PATH="/usr/lib64/pkgconfig:/usr/share/pkgconfig"
  export PKG_CONFIG_PATH

  set -x
  umask 022
  cd "/root/rpmbuild/BUILD"
cd 'nginx-1.4.4'
#
  CFLAGS="${CFLAGS:--O2 -g}" ; export CFLAGS ;
  CXXFLAGS="${CXXFLAGS:--O2 -g}" ; export CXXFLAGS ;
  FFLAGS="${FFLAGS:--O2 -g}" ; export FFLAGS ;
  ./configure --host=x86_64-redhat-linux-gnu --build=x86_64-redhat-linux-gnu \
        --program-prefix= \
        --prefix=/usr \
        --exec-prefix=/usr \
        --bindir=/usr/bin \
        --sbindir=/usr/sbin \
        --sysconfdir=/etc \
        --datadir=/usr/share \
        --includedir=/usr/include \
        --libdir=/usr/lib64 \
        --libexecdir=/usr/libexec \
        --localstatedir=/var \
        --sharedstatedir=/var/lib \
        --mandir=/usr/share/man \
        --infodir=/usr/share/info
./configure --prefix=/srv/nginx --without-http_scgi_module --without-http_uwsgi_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre=/root/rpmbuild/SOURCES/pcre-8.34 --with-pcre-jit

exit 0


Почему подставляются опции для configure по умолчанию?
Пробовал писать %configure --options - не помогло.

Подскажите куда смотреть :)
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Сборка rpm пакета.

Сообщение Bizdelnick »

Во-первых, ни в коем случае нельзя ничего собирать под root. Одна маленькая ошибка в спеке - и ты отец и система убита.
Во-вторых, покажите весь спек. Такое ощущение, что сначала у Вас там %configure, а потом ./configure. Правильно, конечно, использовать макрос.
В-третьих, зря Вы так над configure измываетесь.
BigBrother писал(а):
18.01.2014 16:23
--prefix=/srv/nginx
Зачем? Если очень хочется поставиться в другой префикс, нужно макросы переопределять. Хотя я бы этого делать не стал, тем более что по FHS /srv совсем для другого предназначен.

BigBrother писал(а):
18.01.2014 16:23
--with-pcre=/root/rpmbuild/SOURCES/pcre-8.34
Этого тут быть не должно. Нужно девелоперский пакет pcre в BuildRequires прописать, а это уберите.

Ну и главное - почему не взять репозиторный src.rpm и внести изменения в него?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Сборка rpm пакета.

Сообщение BigBrother »

Bizdelnick писал(а):
18.01.2014 16:33
Во-первых, ни в коем случае нельзя ничего собирать под root. Одна маленькая ошибка в спеке - и ты отец и система убита.

Знаю. Но это тестовая виртуалка, чтобы понять принцип сборки пакета.

Bizdelnick писал(а):
18.01.2014 16:33
Во-вторых, покажите весь спек. Такое ощущение, что сначала у Вас там %configure, а потом ./configure. Правильно, конечно, использовать макрос.

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

Name:           nginx
Version:        1.4.4
Release:        1%{?dist}
Summary:        nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev

packager:       xxx
vendor:         xxx

Distribution:   CentOS
ExcludeArch:    sparc, s390, s390x
Exclusiveos:    linux

Group:          Web
License:        GPLv3
URL:            http://nginx.org
Source0:        http://nginx.org/download/nginx-1.4.4.tar.gz
BuildRoot:      %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)

BuildRequires:  make, gcc, gcc-c++, zlib-devel
Requires:       zlib

%description
nginx

%prep
%setup -q

%build
#%configure
./configure --prefix=/srv/nginx --without-http_scgi_module --without-http_uwsgi_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre=/root/rpmbuild/SOURCES/pcre-8.34 --with-pcre-jit
#make
#make %{?_smp_mflags}

%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}

%clean
rm -rf %{buildroot}

%files
%defattr(-,root,root,-)
%doc

%changelog


Bizdelnick писал(а):
18.01.2014 16:33
В-третьих, зря Вы так над configure измываетесь.
BigBrother писал(а):
18.01.2014 16:23
--prefix=/srv/nginx
Зачем? Если очень хочется поставиться в другой префикс, нужно макросы переопределять. Хотя я бы этого делать не стал, тем более что по FHS /srv совсем для другого предназначен.

Вопрос сейчас не про путь установки (префикс можно и другой указать), мне интересно, почему моя строка configure с опциями не применяется и берется стандартная, которая выдает ошибку.


Bizdelnick писал(а):
18.01.2014 16:33
BigBrother писал(а):
18.01.2014 16:23
--with-pcre=/root/rpmbuild/SOURCES/pcre-8.34
Этого тут быть не должно. Нужно девелоперский пакет pcre в BuildRequires прописать, а это уберите.

Спасибо, возможно так более правильно, но это не ответ на вопрос :)


Bizdelnick писал(а):
18.01.2014 16:33
Ну и главное - почему не взять репозиторный src.rpm и внести изменения в него?

src.rpm позволит мне прописать опции сборки, как это делается в случаее работы с tar.gz? И насколько мне известно, не всегда можно найти последнию версию программы в виде src.rpm, а только через время, после релиза.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Сборка rpm пакета.

Сообщение Bizdelnick »

BigBrother писал(а):
18.01.2014 17:23
#%configure

Вот и ошибка. Макрос раскрывается, даже если перед ним есть #. Поскольку макрос многострочный, закомментированной остаётся только первая его строка - в данном случае она пустая. Проверяйте спеки rpmlint'ом, он должен на такое ругаться. Чтобы такого не было, надо в закомментированных строках экранировать все знаки %:

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

#%%configure


BigBrother писал(а):
18.01.2014 17:23
это тестовая виртуалка, чтобы понять принцип сборки пакета.

И что, сложно на ней сделать пользователя? Некоторые пакеты от root тупо не собираются (и правильно делают). (А лучше всего собирать mock'ом, но это уже совсем другая история...)

BigBrother писал(а):
18.01.2014 17:23
возможно так более правильно

Это не более правильно, это единственно правильно.

BigBrother писал(а):
18.01.2014 17:23
src.rpm позволит мне прописать опции сборки, как это делается в случаее работы с tar.gz? И насколько мне известно, не всегда можно найти последнию версию программы в виде src.rpm, а только через время, после релиза.

В src.rpm находятся ровно такие же тарбол, спек и всё, что надо для сборки. Ставите его rpm -i (от простого юзера - это важно!), он распаковывается в ~/rpmbuild. При необходимости кладёте более свежий тарбол и меняете версию в спеке - всех дел.
Ну или отсюда можно стянуть: http://pkgs.fedoraproject.org/cgit/nginx.git/tree/. Судя по тому, что там в спеке, макрос %configure для nginx действительно не работает, и --prefix определяет не то, что обычно называют префиксом, так что я немного погорячился.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Сборка rpm пакета.

Сообщение BigBrother »

А как быть со скриптом инициализации? Как его правильно прописать/создать, чтобы после установки rpm пакета, в он появился как /etc/init.d/nginx ?
Как я понимаю, запихнуть в спеку в секцию %post весь код уже готового скрипта инициализации не совсем правильно. А если рядом с тарболом, положить скрипт инициализации, и после установки пакета, просто его скопировать через %post ??

Bizdelnick писал(а):
18.01.2014 22:10
BigBrother писал(а):
18.01.2014 17:23
это тестовая виртуалка, чтобы понять принцип сборки пакета.

И что, сложно на ней сделать пользователя? Некоторые пакеты от root тупо не собираются (и правильно делают). (А лучше всего собирать mock'ом, но это уже совсем другая история...)

учтёмс..

Bizdelnick писал(а):
18.01.2014 22:10
BigBrother писал(а):
18.01.2014 17:23
возможно так более правильно

Это не более правильно, это единственно правильно.

:D

Bizdelnick писал(а):
18.01.2014 22:10
BigBrother писал(а):
18.01.2014 17:23
#%configure

Вот и ошибка. Макрос раскрывается, даже если перед ним есть #. Поскольку макрос многострочный, закомментированной остаётся только первая его строка - в данном случае она пустая. Проверяйте спеки rpmlint'ом, он должен на такое ругаться. Чтобы такого не было, надо в закомментированных строках экранировать все знаки %:

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

#%%configure


Сработало!!

Bizdelnick писал(а):
18.01.2014 22:10
BigBrother писал(а):
18.01.2014 17:23
src.rpm позволит мне прописать опции сборки, как это делается в случаее работы с tar.gz? И насколько мне известно, не всегда можно найти последнию версию программы в виде src.rpm, а только через время, после релиза.

В src.rpm находятся ровно такие же тарбол, спек и всё, что надо для сборки. Ставите его rpm -i (от простого юзера - это важно!), он распаковывается в ~/rpmbuild. При необходимости кладёте более свежий тарбол и меняете версию в спеке - всех дел.

Сделал, спасибо. Не много прояснилась ситуация.
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu

Re: Сборка rpm пакета.

Сообщение alv »

BigBrother писал(а):
20.01.2014 18:31
учтёмс..

Кстати, а не было мысли попробовать собирать в OBS - https://build.opensuse.org/?
Там не только для openSUSE пакеты можно собирать, но и для ряда других дистров, в том числе для редхатоидов
один из плюсов - не надо думать над рутом и юзером на локальной машине. И это плюс не единственный.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Сборка rpm пакета.

Сообщение Bizdelnick »

BigBrother писал(а):
20.01.2014 18:31
А как быть со скриптом инициализации? Как его правильно прописать/создать, чтобы после установки rpm пакета, в он появился как /etc/init.d/nginx ?
Как я понимаю, запихнуть в спеку в секцию %post весь код уже готового скрипта инициализации не совсем правильно. А если рядом с тарболом, положить скрипт инициализации, и после установки пакета, просто его скопировать через %post ??

Не трогайте %post. Вообще ссылку на федоровские исходники я давал, могли бы посмотреть, как сделано там, хотя там и systemd'овый сервис. А ещё рядом есть ветка el6. Там в начале:

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

Source1:           nginx.init
и в %install:

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

install -p -D -m 0755 %{SOURCE1} \
    %{buildroot}%{_initrddir}/nginx
и, естественно, в %files:

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

%{_initrddir}/nginx
Сам скрипт лежит там же, где и все исходники.

Да, %post всё же надо немного потрогать:

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

%post
if [ $1 -eq 1 ]; then
    /sbin/chkconfig --add %{name}
fi
и %preun с %postun:

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

%preun
if [ $1 -eq 0 ]; then
    /sbin/service %{name} stop >/dev/null 2>&1
    /sbin/chkconfig --del %{name}
fi

%postun
if [ $1 -eq 2 ]; then
    /sbin/service %{name} upgrade || :
fi


Ну и см. документацию, конечно же: https://fedoraproject.org/wiki/Packaging:Sy.../SysVInitScript
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Сборка rpm пакета.

Сообщение BigBrother »

to avl:
Не, не пробовал. Хочется глубже понять сам процесс, как говорится "мы не ищем легких путей" :)

to BizdelnickЖ
Я собственно так и сделал. Сначала спросил, а потом по твоему-же совету сделал

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

rpm -i nginx-1.4.4-1.el6.ngx.src.rpm

и посмотрел пример спек файла и содержимое sources.
А в %post у меня создается юзер (если это первая установка), прописывается автозагрузка и еще несколько вещей.
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu

Re: Сборка rpm пакета.

Сообщение alv »

BigBrother писал(а):
20.01.2014 21:43
to avl:
Не, не пробовал. Хочется глубже понять сам процесс, как говорится "мы не ищем легких путей" :)

Так процесс тот же, главная его часть - составление спека, от этого никто не избавит.
Просто OBS освобождает от многих побочных забот.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Сборка rpm пакета.

Сообщение Bizdelnick »

alv писал(а):
20.01.2014 23:18
Так процесс тот же, главная его часть - составление спека, от этого никто не избавит.

IMHO учиться лучше именно на rpmbuild. Заглядывая в rpm --showrc, сборочный скрипт и содержимое собранного пакета по мере необходимости. OBS хорош для сборки уже отлаженных спеков, а не для отладки.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Сборка rpm пакета.

Сообщение BigBrother »

Не получается собрать php пакет. Вот spec

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

%define fpm     phpfpm

Name:           php
Version:        5.5.8
Release:        1%{?dist}.nitra

Summary:        RPM

packager:       xxxx
vendor:         x1

Distribution:   CentOS
ExcludeArch:    sparc, s390, s390x
Exclusiveos:    linux

Group:          System Environment/Daemons
License:        PHP License v3.01
URL:            http://php.net

Source0:        ./%{name}-%{version}.tar.gz
Source1:        ./{fpm}.init
Source2:        ./%{name}-fpm.conf_
Source3:        ./%{name}.ini_

BuildRoot:      %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)

BuildRequires:  make gcc gcc-c++ openssl-devel libmcrypt-devel libicu-devel bzip2-devel libxml2-devel libxslt-devel libvpx-devel libjpeg-devel libpng-devel openssl-devel zlib-devel curl-devel libtool-ltdl-devel
#Requires:      zlib

Requires(pre):  shadow-utils
Requires(post): chkconfig

%description
PHP is a popular general-purpose scripting language that is especially suited to web development.

%prep
%setup -q

%build
./configure \
        --enable-fpm \
        --with-libdir=lib64 \
        --with-fpm-user=%{fpm} \
        --with-fpm-group=%{fpm} \
        --disable-ipv6 \
        --with-zlib \
        --enable-bcmath \
        --with-bz2 \
        --with-mhash \
        --enable-json \
        --without-ldap \
        --enable-mbstring \
        --with-mcrypt \
        --with-mysql \
        --enable-pdo \
        --disable-wddx \
        --enable-zip \
        --enable-ctype \
        --with-pdo-mysql \
        --enable-intl \
        --with-xsl \
        --with-jpeg-dir \
        --with-gd \
        --with-openssl \
        --with-curl \
        --enable-soap
make %{?_smp_mflags}

%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}

#%{__mkdir} -p $RPM_BUILD_ROOT%{_initrddir}
#%{__install} -m755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/%{fpm}

%clean
rm -rf %{buildroot}


%files
%defattr(-,root,root,-)

%doc

%post
if [ $1 -eq 1 ]; then
        /usr/sbin/useradd -M -s /sbin/nologin %{fpm}
        /sbin/chkconfig %{fpm} on

        /bin/touch /var/log/%{fpm}
        %{__chown} -R %{fpm}.%{fpm} /var/log/%{name}

        /etc/init.d/%{fpm} start

        cat <<BANNER
            "%{fpm} "
BANNER
fi

if [ $1 -ge 2 ]; then
        echo "%{fpm} was updated to %{version}-%{release}, just try php-fpm restart"
fi

%preun
if [ $1 -eq 0 ]; then
        /etc/init.d/%{fpm} stop
        /sbin/chkconfig --del %{fpm}
        /usr/sbin/userdel -r -f %{fpm} &> /dev/null
fi

%changelog


Получаю ошибку

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

...
Build complete.
Don't forget to run 'make test'.

+ exit 0
Выполняется(%install): /bin/sh -e /var/tmp/rpm-tmp.BpqMI9
+ umask 022
+ cd /home/build/rpmbuild/BUILD
+ cd php-5.5.8
+ rm -rf /home/build/rpmbuild/BUILDROOT/php-5.5.8-1.el6.nitra.x86_64
+ make install DESTDIR=/home/build/rpmbuild/BUILDROOT/php-5.5.8-1.el6.nitra.x86_64
mkdir: cannot create directory `/usr/local/lib/php': Permission denied
mkdir: cannot create directory `/usr/local/lib/php/extensions': No such file or directory
mkdir: cannot create directory `/usr/local/lib/php/extensions/no-debug-non-zts-20121212': No such file or directory
make: *** [install-modules] Error 1
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.BpqMI9 (%install)


Если использовать обычный макрос %configure (без всяких опций), ошибка такая

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

....
Build complete.
Don't forget to run 'make test'.

+ exit 0
Выполняется(%install): /bin/sh -e /var/tmp/rpm-tmp.1l8TyM
+ umask 022
+ cd /home/build/rpmbuild/BUILD
+ cd php-5.5.8
+ rm -rf /home/build/rpmbuild/BUILDROOT/php-5.5.8-1.el6.nitra.x86_64
+ make install DESTDIR=/home/build/rpmbuild/BUILDROOT/php-5.5.8-1.el6.nitra.x86_64
mkdir: cannot create directory `/usr/lib64/extensions': Permission denied
mkdir: cannot create directory `/usr/lib64/extensions/no-debug-non-zts-20121212': No such file or directory
make: *** [install-modules] Error 1
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.1l8TyM (%install)


Пакеты собираю в системе не из под рута (как и рекомендовали).
Как починить?
Что означает ошибка, я понимаю, но как исправить, не пойму, т.к. По такой же схеме, успешно собрал zabbix_agentd, memcahced, nginx.

P.S>Кстати, макрос %configure заработал, странно..
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Сборка rpm пакета.

Сообщение Bizdelnick »

BigBrother писал(а):
27.01.2014 13:49

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

+ make install DESTDIR=/home/build/rpmbuild/BUILDROOT/php-5.5.8-1.el6.nitra.x86_64
mkdir: cannot create directory `/usr/local/lib/php': Permission denied

Вот это как раз тот случай, когда сборка от рута загадила бы систему. ;-)
Причина, видимо, в том, что переменная DESTDIR в Makefile не обрабатывается. Скорее всего вместо неё какая-то другая. Надо смотреть Makefile (или, опять-таки, найти готовый спек и посмотреть, как там сделано).
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Сборка rpm пакета.

Сообщение serzh-z »

Bizdelnick писал(а):
27.01.2014 14:12
DESTDIR в Makefile не обрабатывается.
Для PHP нужно использовать INSTALL_ROOT вместо DESTDIR.
Спасибо сказали:
BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Сборка rpm пакета.

Сообщение BigBrother »

serzh-z писал(а):
27.01.2014 14:15
Bizdelnick писал(а):
27.01.2014 14:12
DESTDIR в Makefile не обрабатывается.
Для PHP нужно использовать INSTALL_ROOT вместо DESTDIR.

Работает!
А где такие нюансы можно смотреть за ранее для других пакетов?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Сборка rpm пакета.

Сообщение Bizdelnick »

BigBrother писал(а):
27.01.2014 14:58
А где такие нюансы можно смотреть за ранее для других пакетов?

В README или INSTALL. Хотя обычно там такие нюансы не уточняются, так что самый эффективный способ - в мейкфайлах ковыряться.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Сборка rpm пакета.

Сообщение serzh-z »

BigBrother писал(а):
27.01.2014 14:58
А где такие нюансы можно смотреть за ранее для других пакетов?
В README* или INSTALL*, находящихся, обычно, в архиве с исходниками пакета.
Спасибо сказали: