【问题标题】:Cross compiling C code for windows on Linux with OpenCV使用 OpenCV 在 Linux 上交叉编译 Windows 的 C 代码
【发布时间】:2015-06-14 04:04:18
【问题描述】:

我正在尝试使用 OpenCV 在 linux 上为 windows 编译一个程序。我遵循了本指南:http://www.blogcompiler.com/2010/07/11/compile-for-windows-on-linux/

我只安装了 64 位架构所需的一切。在我尝试使用 OpenCV 之前,一切都正常工作,我已经在 usr/include 目录中安装了 opencv,并且它与 gcc 一起工作正常。因此,我将 usr/inlcude 目录中的 opencv 文件复制到 /opt/mingw64/W64_180676/mingw/include 目录中,它可以识别它,但是当我尝试编译时,它给了我这个错误:

/usr/lib/libopencv_calib3d.so:无法读取符号:文件格式错误

我读到这个错误与不匹配的架构有关,但是看到我安装的所有东西都是 64 位的,这让我很困惑。如果有人可以帮助我,将不胜感激。

谢谢, 戴夫

【问题讨论】:

    标签: c linux windows opencv


    【解决方案1】:

    这并不容易。您需要先交叉编译适用于 Windows 的 OpenCV,为此您需要交叉编译 OpenCV 的依赖项。

    架构可能相同,但不同编译器生成的符号不同(例如 gcc 二进制 != mingw 二进制)。

    【讨论】:

    • 这真的让我意识到什么是痛苦的交叉编译......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-14
    • 1970-01-01
    • 1970-01-01
    • 2011-05-18
    • 1970-01-01
    • 2023-04-02
    相关资源
    最近更新 更多