0

我正在尝试在 Mac OS X 10.8.5 上构建一些应用程序。

我正在使用 Qt 5.1.1(Clang 3.1,64 位)和 Qt Creator 2.8.1

ffmpeg 来自 git repos 的最新版本。

ffmpeg 使用以下配置成功构建

./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-      libaacplus --enable-libass --enable-libcelt --enable-libfaac --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-openssl --enable-libopus --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvo-aacenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-shared --disable-static --cc=clang --arch=x86_64 --enable-libxvid --prefix=/Users/ad/dev/ffmpeg/build

但是,当我尝试构建应用程序 int Qt 时,我收到了很多错误,例如:

Undefined symbols for architecture x86_64:
"_BN_CTX_free", referenced from:
  _dh_is_valid_public_key in libavformat.a(rtmpdh.o)
"_BN_CTX_new", referenced from:
  _dh_is_valid_public_key in libavformat.a(rtmpdh.o)
"_BN_bin2bn", referenced from:
  _ff_dh_compute_shared_secret_key in libavformat.a(rtmpdh.o)
etc...

恕我直言,我正面临链接 ffmpeg 的问题。因为当我构建它时,我使用了 clang 编译器。但是 Qt 使用了 clang++ 编译器。我试图用标志重建ffmpeg

--cc=clang++ 

代替

--cc=clang 

在我的第一个配置中。但后来我收到错误:

ERROR: libaacplus >= 2.0.0 not found 

但是 libaacplus 出现在我的环境中。

谁能告诉我,请问我该如何解决这个问题?

4

1 回答 1

0

这似乎是同样的问题,虽然不同的图书馆,

Qt5.1/Qt5.2 + Mac OS 10.9 (Mavericks) + XCode 5.0.2,架构 x86_64 的未定义符号

您可能需要将数字(帖子中的 10.9)更改为不同的设置(可能是 10.8,取决于您的 XCode SDK,但不是 Mac OS 版本)

于 2013-12-07T13:18:23.770 回答