컴파일 된 OpenCV 빌드로 .deb 패키지를 어떻게 만들 수 있습니까?


9

OpenCV 2.4.2는 Raspberry Pi에서 컴파일하는 데 6 시간이 걸렸으며 모든 것을 deb로 패키징하고 싶지만 이전에는 한 번도 해본 적이 없습니다. 필요한 다른 라이브러리를 다운로드하거나 포함하도록 컴파일 된 파일을 어떻게 패키지 할 수 있습니까?


이것은 파이 관련 질문이 아닌 Linux 관련 질문입니까? 아마 Debain에게 그것에 대해 묻는 것이 더 좋을까요?

안녕. 이것은 일반적인 데비안이므로 Ask Ubuntu 또는 Unix & Linux 로 옮기 시겠습니까?
Jivings

@Jivings 하드 플로트 대 소프트 플로트에 대해 아무것도 모르기 때문에 PI와 관련이 있다고 생각합니다 .Pi와 관련하여주의 사항이 있다는 것을 알고 있습니다.

답변:


4

OpenCV가 http://opencv.willowgarage.com/에 있는 컴퓨터 비전 라이브러리를 의미하는 경우 , 데비안 과학 팀이 이미 데비안 용으로 패키지했습니다.

가장 좋은 방법은 가장 가까운 데비안 미러에서 데비안 화 된 소스 패키지를 다운로드하고, 데비안 / 규칙 및 / 또는 Makefile을 수정하거나 라즈베리 파이에서 올바르게 컴파일하고 패키지를 다시 빌드하는 데 필요한 등을 구성하는 것입니다.

패키징 작업은 이미 완료되었으므로 업데이트 할 때마다 다시 할 필요가 없습니다.

바이너리 패키지가 많이 있지만 libopencv-dev는 아마도 http://packages.debian.org/search?keywords=libopencv-dev 로 시작하고 싶을 것입니다 .


게시 된 패키지가 Raspberry Pi와 같은 ARM 아키텍처에서 작동합니까? 패키지와 종속성을 더 잘 이해하고 싶지만 willowgarage가 Raspberry Pi의 프로세서 전용 패키지를 출시하지 않으면 패키지가 작동하지 않는 것 같습니다.
Dan B

내가 쓴 것을 잘못 읽었을 것입니다. 데비안 소스 패키지 를 다운로드하고 Raspberry Pi를 다시 컴파일 한다고 말했습니다 . 'onlinemarketresults'에는 이미 RPi 컴파일 (또는 크로스 컴파일) 환경이 설정되어 있으며 RPi를 컴파일하는 방법을 알고 있으며 패키지를 만드는 방법 만 알고 싶었습니다.
cas

11

이 스레드를 관찰하는 다른 사람에게 더 나은 답변을 추가 할 것이라고 생각했습니다.

따라서 이미 장치에 opencv를 구축하는 데 어려움을 겪었다면 아마도 여기의 지침을 따랐을 것입니다.

http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html

이 경우 -D args2 단계에서 동적으로 CMake 매개 변수를 재정의하기 위해를 추가하지 않고 대신 cmake ..빌드 디렉토리 (만들기) 내에서 실행 하면 CMakeCache.txt파일 이 생성 됩니다.

CMakeCache.txt파일 을 편집하면 다음을 변경할 수 있습니다.

CPACK_BINARY_DEB:BOOL=ON

... 위의 opencv 링크에 지정된 다른 변수 외에도. 대신 실행하는 makemake install... 단지 실행 make package과 마법이 발생합니다.

: 경고 당신이있는 경우 WITH_CUDA:BOOL=ON에는 Packager로 종속성 문제가있을 수 있습니다 - 그것은 완전히 다른 질문입니다 ...

자세한 정보 CPACK_*_*:BOOL는 cmake 파일 의 매개 변수를 참조하고 CPack 문서를 참조하십시오.

http://www.cmake.org/Wiki/CMake:CPackPackageGenerators


두 개의 .deb 파일, 두 개의 tar 파일 및 스크립트가 생성됩니다. 이 중 어떤 것이 대상 시스템에 분배되어 실행되어야합니까? 모두? 지원 파일이 필요합니까?
Alex

@Alex, 작년이 게시물에 대해 잊어 버렸습니다. 따라서 OpenCV-*-{libs,dev}.deb 둘 다 필요합니다. dev에 ld가 libs의 .so에 연결하는 데 사용하는 헤더가 있다고 생각합니다. dpkg -c OpenCV-*.deb패키지에서 실행 하여 내용을 나열하여 이를 파악할 수도 있습니다 . 또한 source.tar에서이 버전을 만든 경우 버전 번호가 없을 수 있으며이 버전 dpkg -i $pkg이 마음에 들지 않을 수 있습니다. OpenCV-unknown-*{dev,libs}.deb어떤 경우 git clone github.com/Itseez/opencvgit checkout $tag릴리스 탭에 표시되어 있는지 알 수 있습니다 . 트리의 맨 위에서 빌드하면 deb에 대한 태그도 얻습니다.
hhony

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.