На компіляцію OpenCV 2.4.2 пішло 6 годин, і я хотів би спакувати все як деб, але я цього ніколи не робив. Як я можу упакувати складені файли, щоб вони завантажили або включили необхідні інші бібліотеки?
На компіляцію OpenCV 2.4.2 пішло 6 годин, і я хотів би спакувати все як деб, але я цього ніколи не робив. Як я можу упакувати складені файли, щоб вони завантажили або включили необхідні інші бібліотеки?
Відповіді:
Якщо під OpenCV ви маєте на увазі бібліотеки комп'ютерного зору на http://opencv.willowgarage.com/, вони вже упаковані для debian науковою командою Debian.
Ваша найкраща ставка - завантажити пакет дебіанізованого джерела з найближчого дзеркала Debian, змінити debian / правила та / або Makefile або налаштувати тощо за необхідності, щоб правильно скласти програму малинового пі та відновити пакети.
Робота з упаковкою вже зроблена, не потрібно робити це знову .... і знову і знову кожного разу, коли ви хочете їх оновлювати.
Існує ціла купа двійкових пакетів, але libopencv-dev - це, мабуть, те, що ви хочете почати з http://packages.debian.org/search?keywords=libopencv-dev
Я думав, що додам кращої відповіді для всіх, хто спостерігає цю тему.
Отже, якщо ви вже зіткнулися з проблемою створення opencv на пристрої, ви, ймовірно, дотримувались тут інструкцій:
http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html
У такому випадку, якщо ви не додасте -D args
параметри CMake, що динамічно переосмислюється, на другому кроці, а ви замість цього просто запустіть cmake ..
всередині каталогу збирання (ви створили), він створить CMakeCache.txt
файл.
Якщо ви редагуєте CMakeCache.txt
файл, ви можете змінити:
CPACK_BINARY_DEB:BOOL=ON
... крім інших вказаних змінних у вищенаведеному посиланні opencv. Замість того, щоб бігати make
або make install
... просто бігайте, make package
і чарівництво відбувається.
Попередження: Якщо у WITH_CUDA:BOOL=ON
вас можуть виникнути проблеми із залежністю з пакувальником - і це зовсім інше питання ...
Для отримання додаткової інформації див. CPACK_*_*:BOOL
Параметри у файлах cmake та ознайомтесь із документацією на CPack:
OpenCV-*-{libs,dev}.deb
Вам потрібно обоє. Я думаю, що у Dev є заголовки, які ld використовує для посилання на .so в libs. Ви також можете це зрозуміти, запустивши dpkg -c OpenCV-*.deb
на пакунку, щоб перерахувати вміст. Крім того, якщо ви створили це з source.tar, у вас може не бути номер версії, і dpkg -i $pkg
це не сподобається. Ви можете сказати, чи йдеться OpenCV-unknown-*{dev,libs}.deb
У цьому випадку git clone github.com/Itseez/opencv
та git checkout $tag
на вкладці випусків. Якщо ви будуєте зверху дерева, ви також отримуєте тег на деб.
На цій сторінці має бути вся необхідна інформація та навчальні посібники: http://wiki.debian.org/Packaging