11 opencv visual-c++
我安装了Microsoft Visual C++ Express Edition,版本9.0.30729.1 SP.随附的命令行编译器的版本为15.00.30729.01(80x86).我已经安装了OpenCV 20.0a.
我想编译以下程序:
#include <cv.h>
#include <cxcore.h>
#include <highgui.h>
int _tmain(int argc, _TCHAR* argv[])
{
IplImage *img = cvLoadImage("funny-pictures-cat-goes-pew.jpg");
cvNamedWindow("Image:",1);
cvShowImage("Image:",img);
cvWaitKey();
cvDestroyWindow("Image:");
cvReleaseImage(&img);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
事情是,我不希望使用Visual C++的"可视化"方面,我想用命令行编译器,这是"cl.exe时".
当我尝试编译这个程序时,我收到错误:
C:\visualcpp>cl OpenCV_Helloworld.cpp
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.30729.01 for 80x86 Copyright (C) Microsoft Corporation. All rights reserved.
OpenCV_Helloworld.cpp
OpenCV_Helloworld.cpp(6) : fatal error C1083: Cannot open include file: 'cv.h': No such file or directory
Run Code Online (Sandbox Code Playgroud)
所以我试着指定/我喜欢这个
C:\visualcpp>cl /I "C:\OpenCV2.0\src\cv" OpenCV_Helloworld.cpp
Run Code Online (Sandbox Code Playgroud)
和它的变化,希望/我会以某种方式告诉cl.exe cv.h在哪里,但我得到相同的错误.
作为旁注,我不知道这是否相关,但我注意到"C:\ OpenCV2.0\src \"中没有文件"cv.h",而是一个名为"_cv.h"的文件!所以我相应地更改了标题,但仍然如此.
我想我能用C++编程,但我不明白如何指定头文件/链接器文件位置,特别是使用cl.exe,因为我之前只使用过gcc,我不认为我知道我是什么现在就做 请帮我编译一下!我想开始使用OpenCV.
Jim*_*som 10
首先,确保通过调用Visual Studio附带的一个批处理文件来设置环境,即在Common7\Tools下的Visual Studio文件夹中找到vsvars32.bat.在安装过程中,通常还会创建一个开始菜单条目,用于打开控制台并执行安装脚本.这将确保正确设置环境变量,并且编译器和链接器可以访问头文件,库,工具在您的路径上等.
您将在此处找到cl命令行选项以获取文档:编译器命令行语法
至于OpenCV:看一下OpenCV的目录结构.它的
OpenCVRootFolder\include\opencv\cv.h
Run Code Online (Sandbox Code Playgroud)
所以你通常会说:
cl /I"X:\OpenCVRootFolder\include" [...] source.cpp /LINK [...]
Run Code Online (Sandbox Code Playgroud)
并在您的代码中,通过以下方式包含cv标头:
#include <opencv\cv.h>
Run Code Online (Sandbox Code Playgroud)
......或者你可以继续做下去
cl /I"X:\OpenCVRootFolder\include\opencv" [...] source.cpp /LINK [...]
Run Code Online (Sandbox Code Playgroud)
简单包括
#include <cv.h>
Run Code Online (Sandbox Code Playgroud)
我不明白为什么你不想使用Visual Studio.它只是一个IDE,没有任何功能强加给你或包括你不想要它们.
Pup*_*ppy -7
Visual Studio 没有视觉方面的内容。这只是一个名字。所有 C++ 程序均使用 cl.exe 进行编译。C++ 编译器不了解任何视觉事物——它只是一个品牌。但是,cl.exe 只能从 Visual Studio 中调用。它不是命令行编译器。
| 归档时间: |
|
| 查看次数: |
10437 次 |
| 最近记录: |