1

我有一个非常简单的项目,它使用 Qt 以及我在 linux 下开发的 FFmpeg。
现在我在使用 MXE 交叉编译所述项目以在 Windows 机器上使用它时遇到了麻烦。

在linux下我要做的就是添加

LIBS += -lavcodec -lavformat -lswscale -lavutil

到 Qt 的 .pro 文件并将 FFmpeg 的包含文件包装在“extern“C””块中,它编译得很好。

现在对于 MXE,我只是克隆了 git repo 并使用了

make MXE_TARGETS='x86_64-w64-mingw32.static' qt5 ffmpeg

正如 MXE 文档所述,我设置了 PATH 变量并使用了

qmake && make

但是我得到了很多关于 libavformat 的未定义参考错误。

谁能告诉我我在这里做错了什么?我有点迷路了。

4

1 回答 1

1

好的,所以我得到了这个工作。

gcc 的 mxe 版本要求您多次包含该库,如果该库在要链接的库列表中被其后的库引用。

将 -lavformat 添加到 LIBS 行的末尾。

于 2016-05-23T07:21:07.727 回答