LINUX.ORG.RU

Сборка deb


0

0

Можете объяснить почему при сборке deb пакета с помощью dpkg-buildpackage получается вот что:
configure и make проходят без ошибок;
$ dpkg-buildpackage -rfakeroot

в конце сборки

 /home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/install-sh -c -m 644 xmlrpc-c/transport.h /usr/include/xmlrpc-c/transport.h
cp: невозможно создать обычный файл `/usr/include/xmlrpc-c/#inst.8324#': Permission denied
 /home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/install-sh -c -m 644 xmlrpc-c/client_global.h /usr/include/xmlrpc-c/client_global.h
cp: невозможно создать обычный файл `/usr/include/xmlrpc-c/#inst.8330#': Permission denied
 /home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/install-sh -c -m 644 xmlrpc-c/client.hpp /usr/include/xmlrpc-c/client.hpp
cp: невозможно создать обычный файл `/usr/include/xmlrpc-c/#inst.8336#': Permission denied
 /home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/install-sh -c -m 644 xmlrpc-c/client_transport.hpp /usr/include/xmlrpc-c/client_transport.hpp
cp: невозможно создать обычный файл `/usr/include/xmlrpc-c/#inst.8342#': Permission denied
 /home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/install-sh -c -m 644 xmlrpc-c/client_simple.hpp /usr/include/xmlrpc-c/client_simple.hpp
cp: невозможно создать обычный файл `/usr/include/xmlrpc-c/#inst.8348#': Permission denied
 /home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/install-sh -c -m 644 xmlrpc-c/server_cgi.h /usr/include/xmlrpc-c/server_cgi.h
cp: невозможно создать обычный файл `/usr/include/xmlrpc-c/#inst.8354#': Permission denied
make[2]: *** [install-headers] Ошибка 1
make[2]: Выход из каталога `/home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/include'
make[1]: *** [include/install] Ошибка 2
make[1]: Выход из каталога `/home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00'
make: *** [install] Ошибка 2
dpkg-buildpackage: сбой: fakeroot debian/rules binary возвратил код ошибки 2

Зачем он лезет в /usr ??? Я ведь собираю пакет, а не устанавливаю!
anonymous

fakeroot не fakerootит?

wfrr ★★☆
()

>make[2]: *** [install-headers] Ошибка 1 make[2]: Выход из каталога `/home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00/include' make[1]: *** [include/install] Ошибка 2 make[1]: Выход из каталога `/home/ilya/src/xmlrpc-c/1.12.00/xmlrpc-c-1.12.00' make: *** [install] Ошибка 2

Однако у Вас 'make install' вызывается, потому-то в /usr и лезет. А fakeroot установлен?

anonymous
()
Ответ на: комментарий от anonymous

>Однако у Вас 'make install' вызывается, потому-то в /usr и лезет. А fakeroot установлен?
Вот кусок из rules. Может что поправить надо?

install: build
        dh_testdir
        dh_testroot
        dh_clean -k
        dh_installdirs

        # Add here commands to install the package into debian/tmp
        $(MAKE) prefix=$(CURDIR)/debian/tmp/usr install

anonymous
()
Ответ на: комментарий от anonymous

Значит, prefix не подхватывается или подхватывается не полностью.

JackYF ★★★★
()
Ответ на: комментарий от anonymous

debian/control
-----------------
Source: xmlrpc-c
Priority: extra
Maintainer: ilya <ilya@unknown>
Build-Depends: debhelper (>= 5), autotools-dev
Standards-Version: 3.7.2
Section: libs

Package: xmlrpc-c-dev
Section: libdevel
Architecture: any
Depends: xmlrpc-cBROKEN (= ${Source-Version})
Description: A lightweight RPC library based on XML and HTTP for C and C++

Package: xmlrpc-cBROKEN
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: <insert up to 60 chars description>
 <insert long description, indented with spaces>
---------

>Значит, prefix не подхватывается или подхватывается не полностью.

В чем может быть причина?

anonymous
()
Ответ на: комментарий от anonymous

Давай ещё полный debian/rules и рассказывай, как их получал. Кстати, полный лог dpkg-buildpackage тоже приветствуется.

И ещё: так ли важен этот тру-вей? Не достаточно ли checkinstall'a?

anonymous
()
Ответ на: комментарий от anonymous

>$(MAKE) prefix=$(CURDIR)/debian/tmp/usr install

Может, так?

$(MAKE) DESTDIR=$(CURDIR)/debian/tmp/usr install

Zubok ★★★★★
()
Ответ на: комментарий от anonymous

>Давай ещё полный debian/rules и рассказывай, как их получал. Кстати, полный лог dpkg-buildpackage тоже приветствуется.

Сначала запустил $./configure --prefix=/usr && make. Потом $dh_make.

debian/rules http://paste.ubuntu.com/34835/

Полный лог dpkg-buildpackage http://paste.ubuntu.com/34832/

Я сам не знаю на счет true way. Хочется делать все правильно... и научится таки собирать пакеты.

anonymous
()
Ответ на: комментарий от anonymous

>Сначала запустил $./configure --prefix=/usr && make.

А зачем? Всё это делают dpkg-buildpackage.

В каких строках ошибки в логах? Что-то я их не вижу.

anonymous
()
Ответ на: комментарий от anonymous

Я пробовал по разному. Видимо не весь вывод из консоли попал в лог.. Но пакет не собирается. Ругань идет, потому что он не может создать директории в /usr. Не понимаю зачам он туда лезет. Перепробовал кучу вариантов, толку- ноль.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.