【问题标题】:Compiling live555 and ffmpeg with Xcode 5使用 Xcode 5 编译 live555 和 ffmpeg
【发布时间】:2014-01-24 06:24:10
【问题描述】:

在我当前的项目中,我们需要在同一个项目中同时使用 live555 和 ffmpeg 库。我们能够毫无问题地为这两个项目构建和运行示例,但是在将两个项目合并到项目中时遇到以下编译器错误:

Undefined symbols for architecture armv7:
  "av_free_packet(AVPacket*)", referenced from:
      -[MyRtspClient readFFmpegAudioFrameAndDecode] in MyRtspClient.o
  "av_read_frame(AVFormatContext*, AVPacket*)", referenced from:
      -[MyRtspClient readFFmpegAudioFrameAndDecode] in MyRtspClient.o
  "av_strerror(int, char*, unsigned long)", referenced from:
      -[MyRtspClient readFFmpegAudioFrameAndDecode] in MyRtspClient.o
  "av_dict_set(AVDictionary**, char const*, char const*, int)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "av_init_packet(AVPacket*)", referenced from:
      -[MyRtspClient readFFmpegAudioFrameAndDecode] in MyRtspClient.o
  "avcodec_register_all()", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "av_register_all()", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "av_log_set_level(int)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "av_log(void*, int, char const*, ...)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "avformat_alloc_context()", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "avformat_network_deinit()", referenced from:
      -[MyRtspClient destroyFFmpegAudioStream] in MyRtspClient.o
  "avformat_open_input(AVFormatContext**, char const*, AVInputFormat*, AVDictionary**)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "avformat_find_stream_info(AVFormatContext*, AVDictionary**)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "av_find_best_stream(AVFormatContext*, AVMediaType, int, int, AVCodec**, int)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "av_dump_format(AVFormatContext*, int, char const*, int)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "avcodec_open2(AVCodecContext*, AVCodec const*, AVDictionary**)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "avformat_network_init()", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "av_dict_free(AVDictionary**)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
  "avcodec_find_decoder(AVCodecID)", referenced from:
      -[MyRtspClient initFFmpegAudioStream] in MyRtspClient.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我应该已经包含了所有必需的文件,所以我对此有点傻眼,欢迎任何建议,谢谢。

【问题讨论】:

    标签: ios compiler-construction ffmpeg live555


    【解决方案1】:

    是的,您可以非常成功地组合它们。我发现最好的方法是创建一个工作区, 合并 ffmpeg 和 live555 库。

    这是一个例子。

    【讨论】:

    • 谢谢,我再试一次,可能是我合并时做的傻事。可以肯定的是,您是否尝试过看看这是否适用于 Xcode 5.0.x?
    • 仍然收到相同的错误消息,如果您的项目是 live555 和 ffmpeg 的简单合并,是否可以将其上传到某个地方供我下载并尝试?提前致谢
    • 你能直接联系我吗,或者通过我们的 Facebook 页面,也许我们可以想出一些东西facebook.com/groups/mooncatventures
    • 谢谢,我已经申请加入你的 FB 群组
    猜你喜欢
    • 2014-01-27
    • 1970-01-01
    • 1970-01-01
    • 2013-10-06
    • 2013-12-15
    • 1970-01-01
    • 2013-11-15
    • 2013-04-14
    • 2014-08-19
    相关资源
    最近更新 更多