1

Ubuntu 12.04.2 LTS (64 mb) を搭載した 2 台のマシンがあり、もう 1 台は Snow Leopard OS です。私のMacでは問題なくffmpegを使用していますが、ubuntuでffmpegを使用しようとすると6700(!)エラーが表示されます:

error: undefined reference to `av_freep'
error: undefined reference to `av_strstart'
error: undefined reference to `av_freep'
...

QT 4.8.5 と g++ x86 64b を使用しています。エラーや警告なしでhttp://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuideに従って ffmpeg をインストールしました。

私のテストコードは次のとおりです。

.h

QT += core gui 

INCLUDEPATH += \
    /usr/local/Include

LIBS += /usr/local/lib/libavcodec.a
LIBS += /usr/local/lib/libavutil.a
LIBS += /usr/local/lib/libavformat.a
LIBS += /usr/local/lib/libswscale.a


SOURCES += main.cpp

.cpp:

extern "C"
{
#ifndef __STDC_CONSTANT_MACROS
#  define __STDC_CONSTANT_MACROS
#endif

#include "libavcodec/avcodec.h"
#include "libavformat/avformat.h"
}

#include <stdio.h>

int main()
{
    AVFormatContext *pFormatCtx;
    av_register_all();

    const char* fil = "/home/cits/Desktop/movFile.mov";

    if(avformat_open_input(&pFormatCtx, fil, NULL, NULL)!=0)
    {
        return -1; // Couldn't open file
    }

    if(avformat_find_stream_info(pFormatCtx, NULL)<0)
    {
        return -1; // Couldn't find stream information
    }

    return 0;
}

何か案は??

前もって感謝します。

4

1 に答える 1

0

.pro ファイルは次のようになります。

QT += core gui 

INCLUDEPATH += \
    /usr/local/Include

LIBS += -L/usr/local/lib/ -llibavcodec -llibavutil -llibavformat -llibswscale


SOURCES += main.cpp
于 2013-07-19T09:33:14.817 に答える