zbar二維碼掃描在Linux系統下的編譯安裝


獲取源代碼 zbar
http://downloads.sourceforge.NET/project/zbar/zbar/0.10/zbar-0.10.tar.gz

解壓
1. tar -zxvf zbar-0.10.tar.gz

獲取相關編譯支持
1. $ sudo apt-get install libqt4-dev  //qt相關
2. $ sudo apt-get install libv4l-dev
3. $ sudo ln -s /usr/include/libv4l1-videodev.h /usr/include/linux/videodev.h  //.h文件鏈接
4. $ sudo apt-get install python-gtk2-dev

編譯安裝
1 $ export CFLAGS=""
2 $ ./configure
3 $ make
4 $ sudo make install

如果不指定prefix,編譯完成會在/usr/local/bin下生成相應的可執行文件,/usr/local/include下生成頭文件,/usr/local/lib下相應的.so庫。(指定prefix,編譯可能會出現問題)

/×××××××××××××××××××××××××ERROR××××××××××××××××××××××××××××/

1 ,出錯
    test for video support failed! rebuild your kernel to include video4linux support or configure --disable-video to skip building video support.

    解決1 : 直接在configure中 添加--disable-video     (./configure --disable-video)  這樣,就不會支持V4L2了

    解決2 : 由於頭文件檢測問題中,linux2.4以上內核沒有/usr/include/linux/videodev.h,只有/usr/include/libv4l1-videodev.h,/usr/include/linux/videodev2.h,
    修改configure.ac
    AC_CHECK_HEADERS([linux/videodev.h] 改爲 AC_CHECK_HEADERS([libv4l1-videodev.h]
    修改zbar/video/v4l1.c
    #include <linux/videodev.h> 改爲 #include <libv4l1-videodev.h>
    重新執行編譯
    $ export CFLAGS=""
    $ ./configure
    $ make
    $ sudo make install

2 ,出錯:
    configure: error: in `/home/huazai/user_dir/zbar/zbar-0.10':
    configure: error: Unable to find ImageMagick >= 6.2.6:
    No package 'MagickWand' found

    解決:        
    1. 安裝 ImageMagick :
    $sudo apt-get install imagemagick libmagickwand-dev


3 ,出錯
    zbarcam: error while loading shared libraries: libzbar.so.0: cannot open shared object file: No such file or directory

    解決2:
    $ sudo apt-get install PHP-pear php5-dev  //如果報錯,可以嘗試phpx-dev

希望能幫到各位。。。


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章