zoukankan      html  css  js  c++  java
  • OPENCV的在LINUX下的安装使用注意事项

    http://tech.techweb.com.cn/viewthread.php?tid=239096

    经过几天的努力(快一个星期了。),终于把OPENCV装到LINUX下并且里边的程序可以正常使用了。本来就应该可以顺利完成的东西,不过,其中遇到很多困难也是不争的事实。
    / N3 R+ S; Y8 ]2 z; Q, I' q4 z: G5 X
    总结以下几点注意事项,希望对以后的工作有所帮助:(按照OPENCV网站上的步骤安装会出现问题)
    & r- A% x. a" F, w: q
      \0 c  Q5 }- x% W/ Q1.安装RH9时记得把GTK+安装上,否则,OPENCV里边所有程序是执行不了的。- Q4 s3 I) h4 Y  {0 l
    1 c  l3 G- S. X9 U1 z! d
    2.记得修改/etc/ld.so.conf
    3 e! z+ C9 [3 ^, ~添加一行/usr/local/lib
    ) g0 S% W/ n8 E9 e* g6 j0 a! S5 c1 I
    # ldconfig (root用户)
    2 l% z6 \! W  e' @" }& X9 s/ m' B/ s% h! h  f" W+ y
    然后将/usr/local/lib/pkg-config中的opencv.pc 拷贝到/usr/lib/pkg-config中,(如果不做这步,根本编译不起)
    : `! i& T6 m1 r8 t& h0 H% n/ E8 N7 c# l( j! W* f, f% v2 ^
    可以采用这个操作7 c! w* m- X+ l& m5 ]# Y" P
    # cp /usr/local/lib/pkg-config/opencv.pc /usr/lib/pkg-config5 O9 U' m/ t" T; i3 O

    - R0 I1 h; [  g3. congfigure的时候,输入./configure --without-python --enable-static8 W6 a! I. \3 ^* D$ F& [" X
    0 A5 w9 R, P/ B1 s, ^
    注释:在我的电脑上,如果没有第一个WITHOUT,MAKE的时候就会出错,无奈;第二个是为了在编译程序的时候生成静态连接库文件(具体怎么生成我还没搞懂,新手。。。)
    & q8 O7 L! I$ S& X* }5 Q
    ( C/ w- P# P9 a8 t" Y. b# v) q之后,出现的提示信息是:. i4 J7 A$ B0 P% k
    ./configure, m- m" E- y7 C8 c3 b8 T
    checking build system type... i686-pc-linux-gnu8 d* Y5 {- \8 U  I
    checking host system type... i686-pc-linux-gnu+ ]* u/ c. P3 g. e8 b! X9 X3 L$ @
    checking target system type... i686-pc-linux-gnu# O& [/ X- [! {  O0 u
    checking for a BSD-compatible install... /usr/bin/install -c, P% m3 \) g2 A
    checking whether build environment is sane... yes
    / z1 B. V$ Z; Y4 Ychecking for gawk... no* \- D  u' G: ?. k. O2 G
    ... ...
    7 c& k; _% N9 p) W' e
    3 q9 ?5 v2 ]# T7 A! X' `General configuration ==============" K8 X7 @8 [$ c, ~/ J) s3 f/ }
    ; R  n$ L6 `! w% a' W8 G
    Compiler: g++
    6 D) |7 S- X' G9 _  ^0 Z3 z% E1 V3 P: E% S) o/ ~9 A4 d! Z
    CXXFLAGS: -Wall -fno-rtti -pipe -O3 -g -march=i686 -ffast-math -fomit-frame-pointer' `# }* x5 @; W- p) c
    8 k1 D- W  [& L; O8 J7 ?
    Install path: /usr/local
    9 g2 y  E8 {* A' X" V6 L2 A% P$ E5 }$ B. p2 d! y6 v( Q1 M7 ~7 Z; u
    HighGUI configuration ==================
    : M6 H% \4 [4 ~# c3 ~; j7 X4 W0 h7 k$ q" n7 \* c5 g
    Windowing system --------------+ @2 D' B8 h; H. d. j; I
    Use Carbon / Mac OS X: no
    ) B5 R' A  ^' ^' rUse gtk+ 2.x: yes+ v! T# @  Q0 @4 X( e
    Use gthread: yes
    & f! j2 k' @# p: ^; L' d  u" h9 O3 Q0 G/ p# p. Z! [' u- z# S
    Image I/O ---------------------9 \7 ~9 @8 }! C: J. ~5 A0 }+ A
    Use libjpeg: yes
    % ]  e; q3 I3 c" O6 u0 CUse zlib: yes
    & v* S' k# q+ s6 i" N* _Use libpng: yes) q' e9 D5 h4 X
    Use libtiff: yes
    . ~* @/ T! [) |/ y8 ]/ ]Use libjasper: no5 o& e8 s; B. ~4 y( @' ^
    Use libIlmImf: no. ?  Z& l1 g0 Y6 H- l* c

    8 ^, C: r# [* Z2 @Video I/O ---------------------. z" X+ s, S) `2 v
    Use QuickTime / Mac OS X: no1 f1 U  W# c6 M' @# z4 W
    Use xine: no3 L3 M: k. d" W/ e& a
    Use ffmpeg: no
    ! r* |: \3 ~: t( g( Q; e5 eUse dc1394 & raw1394: no
    2 N6 z- e2 Q+ [2 E( G, T' s) GUse v4l: yes
    " w/ s' s4 T$ T: s/ Y/ E9 ]Use v4l2: no
    , s, j8 W+ `# B) v8 z% ^
    + K% I) [. T" {' hWrappers for other languages =============- O! W" Y0 `" l% Q9 K

    " F6 I' W, e9 b3 C9 K8 |# B, |SWIG
    % P" ?; D/ j' |# |/ C2 O0 _Python yes
    4 h! R: `+ `3 X' d6 z6 n' }  h1 T+ Z& [+ W% r: c+ D0 w5 f2 g
    Additional build settings ============
    8 i' _& k9 v  W5 j
    4 m8 z8 H$ B  S4 l; G) e1 oBuild demo apps yes
    ; J) S) [2 q2 ]. B3 D8 X0 `$ Y6 |& A( S/ G2 E8 `) J$ U: L3 k6 L& T
    Now run make ...
    ( [! B* K5 j8 u6 t$ w2 ^" q' Q/ c# P" a
    与网上的不太一样,也许今后工作会因为这个问题而导致无法前进。. E1 I  o" {& t+ d- h+ ~9 P2 E
    ) M! l+ {2 X( e5 ~+ K
    4.还要注意把OPENCV下的头文件,就是包含cv.h和highgui.h这个2个文件的那个目录里边的所有文件(记得是/usr/local/include/opencv),都拷贝到/usr/include下(别问我为什么,反正不拷贝,编译程序时提示找不到那2个头文件)
    * i! G! `6 y0 d* L3 `8 @3 k5 V5 i& o
    5.编译链接文件的方法:* w  B# G4 `$ D1 |

    8 ~3 L' L9 T# M: |- _" y以编辑cvtest.c文件为例子(因为highgui中采用了c++,所以一定要用g++编译才可以)
    ' ]( r. T+ E0 ^1 m) l6 {( k0 ~: q$ l  a
    A. g++ `pkg-config --cflags opencv` -o cvtest cvtest.c `pkg-config --libs opencv`5 W# p: M( \/ I( r! t

    ' W2 m* A  t' T% @+ ^3 _. M( CB. 编译: g++ `pkg-config --cflags opencv` -c cvtest.c
    , g8 M# `4 o8 L% ^5 e) Y5 @, Y( B
    0 o3 B0 {8 T+ L链接: g++ `pkg-config --libs opencv` -o cvtest cvtest.o
    2 m- ^1 |% S6 b% @
    8 N# y$ p' [1 U0 {( m) C注意:g++ 后边那个东西是 ` ,就是ESC下边那个键。

     

    感谢楼主!2 j5 k; k- Q, J  e7 A
    但是,我按你说的弄完后,那些程序都可以编译,但是在运行时报错:# y& C5 t* J/ o$ z$ U" F6 W) j& v
    error:whiling loading shared libraries:libcxcore.so.l:can not open shared librarise:No such file or directory
    0 M# U- z' l; C* E0 |# p" j1 b请问是怎么回事?
    2# 独步天涯


    我也遇到同樣問題,不過我解決了
    將/usr/local/lib/  底下有關opencv的lib全部複製到  /usr/lib 底下就可執行了!
  • 相关阅读:
    MobaXterm
    记一次完整的java项目压力测试
    jvm调优
    好用的公共dns服务器推荐(免费)
    SpringBoot,Security4, redis共享session,分布式SESSION并发控制,同账号只能登录一次
    javaCV资料目录
    基于JavaCV技术实现RTMP推流和拉流功能
    Java线程池详解
    微服务实战SpringCloud之Feign简介及使用
    【DP专题】——洛谷P5144蜈蚣
  • 原文地址:https://www.cnblogs.com/wqj1212/p/1519379.html
Copyright © 2011-2022 走看看