在windows上构建opencv 3.1-在哪里指定LAPACK库位置?
为了构建opencv 3.1,我将cmake与Visual Studio 2013结合使用。我下载了依赖项,如下所示:在windows上构建opencv 3.1-在哪里指定LAPACK库位置?,opencv,build,cmake,lapack,Opencv,Build,Cmake,Lapack,为了构建opencv 3.1,我将cmake与Visual Studio 2013结合使用。我下载了依赖项,如下所示: 在配置cmake时,它显示的第一件事是: FP16: Compiler support is available A library with BLAS API not found. Please specify library location. LAPACK requires BLAS A library with LAPACK API not found. Please
在配置cmake时,它显示的第一件事是:
FP16: Compiler support is available
A library with BLAS API not found. Please specify library location.
LAPACK requires BLAS
A library with LAPACK API not found. Please specify library location.
问题是,我不知道如何指定位置。对于“Eigen”库,我自己设置库路径(Eigen_INCLUDE_path,这是预定义的),cmake说:
Other third-party libraries:
Use IPP: NO
Use IPP Async: NO
Use Lapack: NO
Use Eigen: YES (ver 3.2.10)
Use Cuda: NO
Use OpenCL: YES
Use OpenVX: NO
Use custom HAL: NO
但LAPACK没有预定义的变量。我还尝试将*.lib和头文件放在我下载的子目录中,希望cmake能够找到这个库
我必须自己构建opencv 3.1,因为在分布式版本中,额外的模块被禁用。它在没有LAPACK的情况下构建,但我的猜测是,我将失去很多性能
非常感谢你的帮助 对我来说,我使用了图书馆:
使用CMake Gui配置opencv
- 选择
Advanced
- 在
组中,为OpenBLAS
OpenBLAS
- 在
组中,选择WITH
WITH\u LAPACK
- 现在单击
按钮,CMake将自动配置Lapack信息Configure
- 一切正常后,您可以单击CMake Gui上的
按钮来生成visual studio项目文件并开始构建Generate
- 我想添加一条评论,但我没有足够的代表。
在我使用
OpenBlas
和LAPACK
在Visual Studio 2013中构建OpenCV 3.2的情况下,除了Viets的回答之外,我还必须更改lapacke.h
中的两行以使用基于
因此,对于lapacke.h
I中的OpenBLAS版本0.2.19-Win64-int32,我进行了更改
@第74行float\u Complex
至std::Complex
和
@第90行double\u Complex
至std::Complex
无需再次构建OpenBLAS库
希望有帮助。使用CMAKE_PREFIX_PATH,如或中所述