コンパイルしたOpenCVビルドで.debパッケージを作成するにはどうすればよいですか?


9

OpenCV 2.4.2はRaspberry Piでのコンパイルに6時間かかりました。すべてをdebとしてパッケージ化したいのですが、これまでに行ったことはありません。コンパイルされたファイルをパッケージ化して、必要な他のライブラリをダウンロードまたは含めるにはどうすればよいですか?


これはPi関連の問題ではなく、Linux固有の問題ですか?たぶんそれについてDebainに尋ねるほうがいいのでは?

こんにちは。これは一般的なDebianなので、Ask UbuntuまたはUnix&Linuxに移動してもよろしいですか?
Jivings

@Jivings私はハードフロートとソフトフロートについて何も知らないので、PIに関連していると思います。それに関しては、Piに関する警告があることを知っています。誰かが私はそれが動かされると何の問題もないこの質問に答えるそこに助けることができるという一般的なコンセンサスがある場合

回答:


4

OpenCVとは、http://opencv.willowgarage.com/にあるコンピュータービジョンライブラリを意味し、Debian科学チームによってすでにdebian用にパッケージ化されています。

あなたの最善の策は、最も近いdebianミラーからdebianizedソースパッケージをダウンロードし、debian / rulesやMakefileを変更するか、raspberry piで正しくコンパイルしてパッケージを再構築するために必要に応じて構成などを行うことです。

パッケージング作業はすでに完了しているので、何度も何度も実行する必要はありません。更新するたびに、何度も何度も繰り返し実行する必要があります。

バイナリパッケージはたくさんありますが、おそらくlibopencv-devがhttp://packages.debian.org/search?keywords=libopencv-devで始めたいものです。


公開されたパッケージはRaspberry PiのようなARMアーキテクチャで動作しますか?パッケージと依存関係をもっとよく理解したいのですが、柳ガレージがRaspberry Piのプロセッサ専用のパッケージをリリースしない限り、それらのパッケージは機能しないように思えます。
Dan B

あなたは私が書いたものを誤って読んだに違いない。私は、debian SOURCEパッケージをダウンロードして、Raspberry Pi用に再コンパイルすると言いました。'onlinemarketresults'にはすでにRPiコンパイル(またはクロスコンパイル)環境が設定されており、RPi用にコンパイルする方法を知っています。彼はパッケージの作成方法を知りたかっただけです。
cas

11

私はこのスレッドを観察している他の人のためにより良い答えを追加すると思いました。

そのため、デバイスでopencvをビルドする問題をすでに経験している場合は、おそらくここの指示に従っているはずです。

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

その場合、-D argsステップ2で動的にオーバーライドする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のドキュメントを参照してください。

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


これにより、いくつかの.debファイル、いくつかのtarファイル、およびスクリプトが生成されます。これらのうち、ターゲットシステムに配布して実行する必要があるのはどれですか。すべて?サポートファイルは必要ですか?
Alex

@Alex、昨年この投稿を忘れていました。ですから、OpenCV-*-{libs,dev}.deb 両方が必要です。開発者には、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 2016年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.