繁体   English   中英

无法从源安装opencv

[英]Can't install opencv from source

这是OpenCV-2.4.0

cd opencv
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON ..
make

错误:

In file included from OpenCV-2.4.0/modules/core/src/system.cpp:460:
OpenCV-2.4.0/release/modules/core/version_string.inc:35:1: warning: missing terminating " character
In file included from OpenCV-2.4.0/modules/core/src/system.cpp:460:
OpenCV-2.4.0/release/modules/core/version_string.inc:35: error: missing terminating " character
OpenCV-2.4.0/release/modules/core/version_string.inc:36:11: error: too many decimal points in number
OpenCV-2.4.0/release/modules/core/version_string.inc:36:29: error: invalid suffix "st" on integer constant
OpenCV-2.4.0/release/modules/core/version_string.inc:40:29: warning: character constant too long for its type
OpenCV-2.4.0/release/modules/core/version_string.inc:57: error: stray ‘@’ in program
OpenCV-2.4.0/release/modules/core/version_string.inc:57: error: stray ‘@’ in program
OpenCV-2.4.0/release/modules/core/version_string.inc:68:10: error: #include expects "FILENAME" or <FILENAME>
OpenCV-2.4.0/release/modules/core/version_string.inc:71: error: stray ‘\’ in program
OpenCV-2.4.0/release/modules/core/version_string.inc:71:9: warning: missing terminating " character
OpenCV-2.4.0/release/modules/core/version_string.inc:71: error: missing terminating " character
OpenCV-2.4.0/release/modules/core/version_string.inc:74:23: warning: missing terminating " character
OpenCV-2.4.0/release/modules/core/version_string.inc:1515: error: stray ‘\’ in program
OpenCV-2.4.0/release/modules/core/version_string.inc:1515:4: warning: missing terminating " character
OpenCV-2.4.0/release/modules/core/version_string.inc:1515: error: missing terminating " character
OpenCV-2.4.0/release/modules/core/version_string.inc: In function ‘const std::string& cv::getBuildInformation()’:
OpenCV-2.4.0/release/modules/core/version_string.inc:36: error: expected ‘,’ or ‘;’ before ‘version’
OpenCV-2.4.0/release/modules/core/version_string.inc:138: error: ‘z_stream’ was not declared in this scope
OpenCV-2.4.0/release/modules/core/version_string.inc:140: error: expected ‘;’ before ‘typedef’
OpenCV-2.4.0/release/modules/core/version_string.inc:161: error: ‘gz_header’ was not declared in this scope
OpenCV-2.4.0/release/modules/core/version_string.inc:163: error: expected ‘;’ before ‘typedef’
OpenCV-2.4.0/release/modules/core/version_string.inc:1505: error: ‘ZEXTERN’ was not declared in this scope
OpenCV-2.4.0/release/modules/core/version_string.inc:1505: error: expected ‘;’ before ‘const’
OpenCV-2.4.0/release/modules/core/version_string.inc:1511: warning: no return statement in function returning non-void
OpenCV-2.4.0/release/modules/core/version_string.inc: At global scope:
OpenCV-2.4.0/release/modules/core/version_string.inc:1515: error: expected unqualified-id before ‘)’ token
OpenCV-2.4.0/modules/core/src/system.cpp:462: error: expected unqualified-id before ‘return’
OpenCV-2.4.0/modules/core/src/system.cpp:465: error: ‘string’ does not name a type
OpenCV-2.4.0/modules/core/src/system.cpp:474: error: ‘string’ does not name a type
OpenCV-2.4.0/modules/core/src/system.cpp:503: error: ISO C++ forbids declaration of ‘Exception’ with no type
OpenCV-2.4.0/modules/core/src/system.cpp:503: error: expected ‘,’ or ‘...’ before ‘&’ token
OpenCV-2.4.0/modules/core/src/system.cpp: In function ‘void error(int)’:
OpenCV-2.4.0/modules/core/src/system.cpp:506: error: ‘exc’ was not declared in this scope
OpenCV-2.4.0/modules/core/src/system.cpp:510: error: ‘exc’ was not declared in this scope
OpenCV-2.4.0/modules/core/src/system.cpp:526: error: ‘exc’ was not declared in this scope
OpenCV-2.4.0/modules/core/src/system.cpp: At global scope:
OpenCV-2.4.0/modules/core/src/system.cpp:543: error: expected declaration before ‘}’ token
make[2]: *** [modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o] Error 1
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
make: *** [all] Error 2

我该怎么办?

我在Debian 6.0上构建OpenCV-2.4.0时遇到了同样的问题。 查看release/modules/core/version_string.inc显示缺少"也是缺少注释/* ,这在using zlib v1:1.2.3.4.dfsg-3 。我使用BUILD_ZLIB重新配置并且没有问题。

我有同样的问题,我通过替换行更改了CMakeLists.txt文件:

OCV_OPTION(BUILD_ZLIB               "Build zlib from source"         WIN32 OR IOS OR APPLE )

有:

OCV_OPTION(BUILD_ZLIB       "Build zlib from source"   ON) #  WIN32 OR IOS OR APPLE )

一切都很好。

我刚刚从存储库(rev 8300)下载了OpenCV 2.4.0源代码,我在Linux上构建它没有任何问题:

$ svn info
Path: .
URL: http://code.opencv.org/svn/opencv/tags/2.4.0/opencv
Repository Root: http://code.opencv.org/svn/opencv
Repository UUID: c5418bc3-7546-4aae-8bad-fa6f2f3e53e6
Revision: 8300
Node Kind: directory
Schedule: normal
Last Changed Author: marina.kolpakova
Last Changed Rev: 8282
Last Changed Date: 2012-04-30 16:06:37 -0300 (Mon, 30 Apr 2012)

$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON ..
$ make

20分钟后,它结束并成功编译。

我有同样的问题。 似乎错误来自cmake 2.8.2。 我升级到2.8.8版本,最后我可以安装opencv 2.4.0。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM