保持问答方面:
最新的(v.2.4.2)OpenCV版本遇到了一个奇怪的问题,该版本无法安装,出现以下错误:
在从/OpenCV-2.4.2/modules/core/src/system.cpp:460包含的文件中:
/OpenCV-2.4.2/release/modules/core/version_string.inc:37:1:warning:missing terminating“character在从/OpenCV-2.4.2/modules/core/src/system.cpp:460包含的文件中: /OpenCV-2.4.2/release/modules/core/version_string.inc:37:错误:缺less终止字符
那么出了什么问题? 看看我的答案。
正如在这个bug报告中提到的,问题是cmake的旧版本(2.8.2)。 所以解决办法是抓取一个cmake源代码的新副本,编译并使用它来安装OpenCV。
注意18/09/2012:这也适用于Ubuntu 12.04与cmake 2.8.9!
# get the cmake src wget http://www.cmake.org/files/v2.8/cmake-2.8.8.tar.gz # extract archive tar xfvz cmake-2.8.8.tar.gz # build the new version cd cmake-2.8.8 cmake . make sudo make install # get the OpenCV src wget -O OpenCV-2.4.2.tar.bz2 http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.2/OpenCV-2.4.2.tar.bz2/download # extract it … tar -xvf OpenCV-2.4.2.tar.bz2 # build it mkdir build cd build /usr/local/bin/cmake -D CMAKE_BUILD_TYPE=RELEASE .. make sudo make install # setup OpenCV sudo echo “/usr/local/lib” >> /etc/ld.so.conf sudo ldconfig
而已。
不幸的是,更新的cmake依赖于比lenny中过时的cmake 2.6-patch 0更新的cmake。 为了编译上面提到的cmake 2.8.8,首先你必须编译CMake 2.6.3或者更高版本,用lenny过时的cmake 2.6-patch 0编译。