Runtime error when linking ffmpeg libraries in qt creator
umaiuma last edited by
Hello, I'm new around here and around qt development.
For the last few days I've been fiddling around with opengl and the like, trying to write a video player.
However, when i try to import the ffmpeg libraries (avcodec, avformat, avutils etc), an error occurs on runtime (the program compiles fine). When compiled and run in debug mode, the error message gives me only a memory address and error code 135 (DLL not found).
This error occurs when i include a function from those libraries in my code (e.g. av_register_all()) and it occurs regardless of whether the function is actually called.
So i'm thinking that I'm doing something wrong when linking these libraries.
I'm currently using:
Windows vista (32bit),
Qt creator 2.4.1 based on Qt 4.7.4 (32bit),
Zeranoe's FFmpeg build git-3233ad4 (2012-06-30)
My .pro file consists of:
@QT += core gui opengl
TARGET = test
TEMPLATE = app
SOURCES += main.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
LIBS += -L"$$PRO_FILE_PWD/libraries/ffmpeg/libs/" -lavcodec -lavformat -lavutil
INCLUDEPATH += libraries/ffmpeg/includes
I've tried many variations to the LIBS += line and checked my filepath many times. However, the DLL not found error occurs in all of these variations =(.
Is there something I'm forgetting when doing these includes?
Thanks in advance >.<,
(young and naive) aspiring dev
goetz last edited by
On Windows, a DLL must be accessible at runtime. Either by putting it into some system directory or some other folder that is in PATH, or by putting it into the same directory where the .exe is. Did you do that?
Hostel last edited by
Another reason of this issue could be a dependencies from ffmpeg. Try check dependencies of dlls by Dependency Walker.