【问题标题】:Compiling a C++ library in Windows for Linux on Intel在 Windows 中为 Intel 上的 Linux 编译 C++ 库
【发布时间】:2016-10-07 08:12:20
【问题描述】:

需要在基于 linux 的设备(Rexroth XM21)上运行库 OpenCV。 这个有一个 Intel Atom 32 位 CPU。 是否可以在 Windows 上为该设备编译库(也在英特尔平台上运行)? 我有实际编译 Windows DLL 的源代码,但当然不能直接使用。

当我在 Raspberry Pi (ARM) 上编译它时,我已经有了不好的体验。遗憾的是,由于架构不兼容,来自 Raspberry 的 .so 文件退出并出现错误。

那么有什么解决办法吗? 某种交叉编译?

【问题讨论】:

    标签: c++ linux opencv compilation cross-compiling


    【解决方案1】:

    例如,您可以在 Ubuntu 上尝试常规 gcc 构建。如果您没有可用的本机 Linux 机器,最简单的方法是在 VirtualBox 机器上安装 Ubuntu ISO。 Intel Atom CPU 应该与您 PC 的 CPU 兼容。但是,有些事情可能会影响您,例如,如果目标 linux 系统使用旧版本的 libc。厂商不提供设备专用的交叉工具链吗?

    【讨论】:

    • 感谢您的提示!将尝试在此处在新的 linux 系统上编译它。 Atom 是 32 位而我的系统是 64 位会不会是个问题?这里的下载部分有一些文件:boschrexroth.com/dcc/Vornavigation/… 这是工具链所需要的吗?
    • 刚收到消息说在这个设备上实际运行linux完全是实验性的,所以没有工具链什么的。
    • 是的,你应该安装一个 32 位的 Ubuntu。下载部分似乎没有提供跨工具链。如果您的目标是 ARM 系统,我会建议使用 linaro 交叉工具链。不幸的是,Linaro 没有为 x86(例如 atom)系统提供工具链。所以我会尝试从 32 位 Ubuntu 系统构建。如果它不兼容,您可能必须安装较旧的 Ubuntu 映像并尝试使用兼容的 libc 版本。
    • 好的,但是您可以通过 SSH 访问它吗?因此,您可以使用“uname -a”了解操作系统版本。
    • 它显然是一个 debian 衍生产品:Linux xm21-debian 4.1.5-rt5-xm21-bluetooth #15 PREEMPT RT Thu Sep 17 11:02:25 CEST 2015 i686 GNU/Linux I've used此处的命令用于确定 clib 版本,它是 2.19。这有点现实吗?
    猜你喜欢
    • 2013-09-12
    • 2021-11-27
    • 1970-01-01
    • 1970-01-01
    • 2012-08-05
    • 1970-01-01
    • 2021-07-16
    • 1970-01-01
    • 2011-06-26
    相关资源
    最近更新 更多