c++ - 图书馆链接问题?MinGW OpenCV 不输出任何东西
问题描述
我一直在尝试用 MinGW g++ 编译一个基本的 OpenCV 示例。它编译但是当我运行 main.exe 时没有输出。我的猜测是我有一个库链接问题,我没有lib
在任何时候链接任何文件夹,也没有将它添加到路径中。我已经在这工作了 8 天以上,我非常感谢您的帮助。
建造
- MinGW-W64 8.1.0 x86_x64-posix-seh-rev0
- 视窗 10
- 来自此 git repo的 OpenCV 4.5.2 minGW 预构建二进制文件
- 我还尝试使用 cmake 从源代码构建。
std::cout << image.size
确实有效,但cv::imshow()
失败了
代码
#include <iostream>
#include <assert.h>
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
int main() {
std::cout << "do something" << std::endl;
cv::Mat image = cv::imread("../resources/corrected_10_0.jpg", cv::IMREAD_COLOR);
assert(!image.empty());
std::cout << image.size;
// cv::namedWindow("test", cv::WINDOW_AUTOSIZE);
// cv::imshow("test", image);
// cv::waitKey(0);
// cv::destroyWindow("test");
return 0;
}
汇编
g++ -Wall main.cpp -o main -IC:\Libs\OpenCV-MinGW-Build\include \
-LC:\Libs\OpenCV-MinGW-Build\x64\mingw\bin -llibopencv_core452 \
-llibopencv_highgui452 -llibopencv_imgcodecs452
Windows 路径变量
指向我的 MinGW 二进制文件和 OpenCV mingW 安装 bin 文件夹/
C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin
C:\Libs\OpenCV-MinGW-Build\x64\mingw\bin
**编辑**
我没有安装任何 3rd 方库/依赖项,例如 zlib 或 libjpeg。我需要下载这些然后链接到它们吗?
解决方案
推荐阅读
- python - Python模块'scm'没有属性'Open'
- regex - 使用 Dockerhub Regex 进行自动构建
- json - 解析包含 json 字符串的 json
- kubernetes - Kubernetes 的 pod 状态为 CrashLoopBackOff 但没有显示日志
- firebase - 我在运行我的应用程序(Flutter、FireBase)时收到此 E/flutter (25055) 错误
- oracle10g - Oracle 形成 10g OLE2 或 CLIENT_OLE2
- intellij-idea - Intellij - 配置为使用 Maven Wrapper 时找不到有效的 Maven 安装
- database - 如何检查firestore中文档的大小?
- linux - 使用 yum 以不同用户身份安装 Tomcat
- android - NestedScrollView 内的 RecyclerView 一次只显示 1 个元素