gpt4 book ai didi

visual-studio-2008 - ffmpeg 最新的 Visual Studio 构建或与 (.a) 库链接

转载 作者:行者123 更新时间:2023-12-04 22:51:11 26 4
gpt4 key购买 nike

这儿存在一个问题。
我需要将 ffmpeg(尤其是 libavcodec)静态链接到 Visual Studio 2008 项目中。

我在互联网上找到了一些 Visual Studio 解决方案,但它们很旧(大约 0.6 版本),我需要最新版本,所以这种方式不适合我。

接下来,我使用 MinGW/msys 进行静态构建(使用 --enable-satic --disable-shared 标志)并在输出中获得 (*.a) 库。
在 Visual Studio 中,我转到链接器属性并添加到 Additional Dependencies(Linker->Input) libvacodec.a 和 libgcc.a。
然后我写了一个简单的应用程序:

#include <stdio.h>
#include <stdlib.h>
extern "C"
{
#ifdef __STDC_CONSTANT_MACROS
#define __STDC_CONSTANT_MACROS
#endif
#include "libavcodec/avcodec.h"
}



#include "libavformat/avformat.h"

int main()
{
av_register_all();
return 0;
}

此代码编译成功,但链接失败。得到一个错误:
error  LNK2019: unresolved external symbol "void __cdecl av_register(void)" (?av_register_all@@YAXXZ) referenced in function _main.

所以,有两个问题:
  • 如何将 Visual Studio 应用程序与 libavcodec.a 链接?
  • 如果可能的话,我在哪里可以获得包含 ffmpeg 最新版本的 Visual Studio 解决方案?

  • 提前致谢!!

    最佳答案

  • 就像您使用 .lib 文件一样。 .a 是同一事物,但名称不同。如果对您来说更容易,请将 libavcodec.a 重命名为 libavcodec.lib。
  • 无处。
  • 关于visual-studio-2008 - ffmpeg 最新的 Visual Studio 构建或与 (.a) 库链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15271127/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com