我在这里很新,但我听说如果你想回答一个问题,stackoverflow 是问它的地方>.<。所以我希望我的问题不是太琐碎,每个人都会对我缺乏研究感到恼火(我已经尝试用谷歌搜索两天了 D = 没有进展!)我也在 Qt 论坛中问过这个问题,但是我想我也会在这里问。
所以...
最近几天我一直在摆弄opengl之类的东西,试图写一个视频播放器。
但是,当我尝试导入 ffmpeg 库(avcodec、avformat、avutils 等)时,运行时出现错误(程序编译正常)。在调试模式下编译和运行时,错误消息只给我一个内存地址和错误代码 135(找不到 DLL)。
当我在我的代码中包含来自这些库的函数(例如 av_register_all())时会发生此错误,并且无论是否实际调用该函数都会发生此错误。
所以我在想我在链接这些库时做错了什么。我目前正在使用:Windows vista (32bit)、基于 Qt 4.7.4 (32bit) 的 Qt creator 2.4.1、Zeranoe 的 FFmpeg build git-3233ad4 (2012-06-30)
我的 .pro 文件包括:
QT += core gui opengl
TARGET = test
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp \
glwidget.cpp
HEADERS += mainwindow.h \
glwidget.h \
FORMS += mainwindow.ui
LIBS += -L"$$_PRO_FILE_PWD_/libraries/ffmpeg/libs/" -lavcodec -lavformat -lavutil
INCLUDEPATH += libraries/ffmpeg/includes
我尝试了 LIBS += 行的许多变体,并多次检查了我的文件路径。但是,在所有这些变体中都会出现 DLL not found 错误 =(.
做这些包括时有什么我忘记的吗?
在此先感谢>.<,(年轻而天真)有抱负的开发者