【问题标题】:Theory or Direction, c++, qt and crosscompiling with MXE理论或方向、c++、qt 和 MXE 交叉编译
【发布时间】:2016-01-11 16:31:20
【问题描述】:

我正在寻求一点帮助,这不是某人需要解决的问题,但更多的理论或正确的前进道路会有所帮助。我对 C、C++ 很陌生。但是我向朋友提供了帮助,我自己也有点卡住了。

我正在为 Windows 交叉编译 MXE 中的项目。该项目使用 QT 4(QTCore、QTGui、QTNetwork 和 QTWebKit)、Boost、OpenSSL、BerkelyDB。

现在在他添加 QTWebKit 之前,我能够使用 i686-w64-mingw32.static 编译项目,我理解由于库与 QTScript 冲突,MXE 无法使用静态编译 QTWebKit,这需要它用 i686-w64-mingw32.shared

编译

现在,该 exe 在 i686-w64-mingw32.shared 中编译,但需要大约 35 个不同的 DLL 库才能运行,包括 libgcc* dll。即使 .pro 或 makefile 具有 -static-libgcc-static-libstdc++

所以我的问题是。

有没有办法编译这个项目,使大多数库是静态的,可以是 libgcc* 和 boost 之类的,而只有少数像 QTWebKit 是动态的或(共享的?)?强>

感谢您在这种情况下提供的任何帮助。

【问题讨论】:

    标签: c++ qt cross-compiling mxe


    【解决方案1】:

    试试TDM-mingw 要么 从源代码构建您的自定义 MinGW-GCC,并默认将所有库设为静态链接。

    【讨论】:

    • 稍微编辑了makefile并用它代替了标准的mingw。第一次完美运行,感谢您的建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-26
    相关资源
    最近更新 更多