pbuilder-dist dh_build не может найти / установить debian/control Зависит
Я следовал учебному пособию 6. Упаковка нового программного обеспечения о том, как создать пакет ubuntu / debian. Я успешно справился с примером Hello, но у меня возникли некоторые проблемы с моим собственным пакетом общей библиотеки.
Я успешно собрал пакет, выполнив следующую команду:
bzr builddeb -- -us -uc
Однако, когда я пытаюсь собрать пакет с помощью pbuilder-dist (который должен имитировать условия свежего дистрибутива), я получаю ошибку, связанную с отсутствующими библиотеками, от которых зависит мой пакет. Я бегу:
pbuilder-dist trusty build libnpregression_1.0-0ubuntu1.dsc
и получить:
debian/rules build
dh build
dh_testdir
dh_auto_configure
-- The C compiler identification is GNU 4.8.2
-- The CXX compiler identification is GNU 4.8.2
-- Check for working C compiler: /usr/bin/x86_64-linux-gnu-gcc
-- Check for working C compiler: /usr/bin/x86_64-linux-gnu-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/x86_64-linux-gnu-g++
-- Check for working CXX compiler: /usr/bin/x86_64-linux-gnu-g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Could NOT find Armadillo (missing: ARMADILLO_LIBRARY ARMADILLO_INCLUDE_DIR)
CMake Error at /usr/share/cmake-2.8/Modules/FindBoost.cmake:1131 (message):
Unable to find the requested Boost libraries.
Unable to find the Boost header files. Please set BOOST_ROOT to the root
directory containing Boost or BOOST_INCLUDEDIR to the directory containing
Boost's headers.
Call Stack (most recent call first):
CMakeLists.txt:27 (find_package)
CMake Error at CMakeLists.txt:33 (message):
flann library not found
-- Configuring incomplete, errors occurred!
See also "/tmp/buildd/libnpregression-1.0/obj-x86_64-linux-gnu/CMakeFiles/CMakeOutput.log".
dh_auto_configure: cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=None returned exit code 1
make: *** [build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2
Похоже, что pbuilder-dist не установил эти зависимости (броненосец, флан и буст).
Меня смущает то, что эти зависимости указаны в файле debian/control:
Source: libnpregression
Priority: optional
Maintainer: Guillaume de Chambrier <chambrierg@gmail.com>
Build-Depends: debhelper (>= 9), cmake
Standards-Version: 3.9.5
Section: libs
Homepage: https://github.com/gpldecha/non-parametric-regression
Package: libnpregression-dev
Section: libdevel
Architecture: any
Depends: libboost-all-dev, libnpregression1 (= ${binary:Version})
Description: Header files of non-parameteric regression library.
This is an extended description of libnpregression-dev
Package: libnpregression1
Section: libs
Architecture: any
Depends: libflann-dev, libboost-all-dev, libarmadillo-dev, ${shlibs:Depends}, ${misc:Depends}
Description: Shared library files of non-parameteric regresion library.
This is an extended description of libnpregression1
Я был бы признателен за любую помощь в решении моей проблемы зависимости сборки pbuilder-dist. Я новичок в упаковке проектов Debian.
1 ответ
libflann-dev, libboost-all-dev, libarmadillo-devдолжны быть добавлены кBuild-Depends:поле.Depends:это зависимости во время выполнения.
Ссылка: Глава 7 - Объявление отношений между пакетами
Подсказка: оставьте "Руководство по политике Debian" открытым.