报错信息:
In file included from /usr/include/stdio.h:937:0, from zbar/debug.h:60, from zbar/scanner.c:34: /usr/include/x86_64-linux-gnu/bits/stdio2.h:140:1: error: expected identifier or ‘(’ before ‘{’ token
首先,在执行./configure时,留意最后输出结果保证正常执行完成,正常完成应该是没有error字符的,例如:
...
configure: creating ./config.status config.status: creating Makefile config.status: creating zbar.pc config.status: creating zbar-gtk.pc config.status: creating zbar-qt.pc config.status: creating doc/doxygen.conf config.status: creating include/config.h config.status: executing depfiles commands config.status: executing libtool commands config.status: executing doc/version.xml commands config.status: executing doc/reldate.xml commands please verify that the detected configuration matches your expectations: ------------------------------------------------------------------------ X --with-x=yes pthreads --enable-pthread=yes v4l --enable-video=no => zbarcam video scanner will *NOT* be built jpeg --with-jpeg=yes Magick++ --with-imagemagick=yes Python --with-python=no GTK+ --with-gtk=yes => the PyGTK widget wrapper will *NOT* be built Qt4 --with-qt=no => the Qt4 widget will *NOT* be built
如果报:Unable to find ImageMagick,安装ImageMagick和libmagickwand-dev
apt-get install imagemagick libmagickwand-dev
如果报: error: no suitable Python interpreter found
说明没有python环境或现有python和zbar需要的版本不一致,如果没有涉及到python,添加参数--without-python
如果报:configure: error: test for video support failed!
rebuild your kernel to include video4linux support or
configure --disable-video to skip building video support.
添加--disable-video 参数
例如我的最后执行./configure参数:
./configure FLAGS="" --disable-video --without-python --without-qt