构建OpenCV时出错:找不到'stdlib.h'

时间:2016-09-11 20:35:43

标签: python c++ opencv gcc

我正在尝试在Python虚拟环境中构建OpenCV,因为有些代码使用Python 2.7并且想要OpenCV 3.1.0,这不一定是系统具有/需要的配置。因此,我认为在虚拟环境中部署自定义OpenCV的一点安装脚本会很好。

这是我的CMAKE例程(为了便于阅读而缩进):

cmake -D BUILD_TIFF=ON 
      -D BUILD_opencv_java=OFF
      -D CMAKE_BUILD_TYPE=RELEASE
      -D CMAKE_INSTALL_PREFIX=${env_path/local}
      -D PYTHON_EXECUTABLE=${env_path}/bin/python
      -D PYTHON_INCLUDE_DIR=${env_path}/include/python2.7 
      -D PYTHON_PACKAGES_PATH=${env_path}/lib/python2.7/site-packages
      -D INSTALL_PYTHON_EXAMPLES=ON
      ${opencv_source_dir}

${env_path}是虚拟环境的路径,${opencv_source_dir}是(解压缩的)OpenCV源文件的路径。

当我的剧本击中实际建筑时:

make -j4
make install

我总是最终得到这个错误:

/usr/include/c++/6.1.1/cstdlib:75:25: (...) stdlib.h: (...) not found
#include_next <stdlib.h>
                        ^

但是,文件实际上是

sudo find / -type f -name "*stdlib.h"

返回:

/usr/include/stdlib.h
/usr/include/bits/stdlib.h
/usr/include/bsd/stdlib.h
/usr/include/freetype2/freetype/config/ftstdlib.h
/usr/include/c++/6.1.1/stdlib.h
/usr/include/c++/6.1.1/tr1/stdlib.h

我通过Google找到的唯一链接(GCC Bugzilla – Bug 70129)并没有真正起作用?!

有没有人遇到同样的错误?

如何强制CMAKE使用gcc / g ++ 5而不是6? (我发现一些链接无法回答为什么会发生这种错误...但他们建议使用gcc / g ++ 5进行编译,因为那里不会出现错误)

0 个答案:

没有答案