iOS中VLC项目的编译错误
Posted
技术标签:
【中文标题】iOS中VLC项目的编译错误【英文标题】:Compiling error of VLC project in iOS 【发布时间】:2013-10-04 06:43:51 【问题描述】:我正在尝试按照instruction 一步一步为ios 编译VLC 项目。
git clone git://git.videolan.org/vlc-ports/ios.git
sh buildAspenProject.sh -s -k 7.0
我得到这个编译错误:
cd builds/unix; /bin/sh ./configure '--without-png' '--prefix=/Users/change/Desktop/VLC_Library/ios/ImportedSources/vlc/contrib/i686-apple-darwin11-i386' '--build=i686-apple-darwin10' '--host=i686-apple-darwin11' '--target=i686-apple-darwin11' '--program-prefix=' '--enable-static' '--disable-shared' '--disable-dependency-tracking' '--with-pic'
configure: WARNING: unrecognized options: --disable-dependency-tracking
checking build system type... i686-apple-darwin10
checking host system type... i686-apple-darwin11
checking for i686-apple-darwin11-gcc... xcrun clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether xcrun clang accepts -g... yes
checking for xcrun clang option to accept ISO C89... none needed
checking how to run the C preprocessor... xcrun cc -E
checking for i686-apple-darwin10-gcc... no
checking for gcc... gcc
checking for gcc... (cached) gcc
checking for suffix of native executables... rm: conftest.dSYM: is a directory
ld: building for MacOSX, but linking against dylib built for iOS Simulator file '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk/usr/lib/libSystem.dylib' for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
configure: error: native C compiler is not working
make[1]: *** [setup] Error 1
make: *** [.freetype2] Error 2
环境:
XCode 5.0
MountainLion 10.8.4
iPhoneSimulator SDK 7.0
调用
$ ld -v
@(#)PROGRAM:ld PROJECT:ld64-224.1
configured to support archs: armv6 armv7 armv7s arm64 i386 x86_64 armv6m armv7m armv7em
LTO support using: LLVM version 3.3svn, from Apple Clang 5.0 (build 500.2.75)
我该如何解决这个问题? 如果有任何建议或想法,请不胜感激。
【问题讨论】:
【参考方案1】:这让我更进一步,但因为缺少 modplug-xmms
的下载 URL 而感到困惑。
VLC 坚持要从
下载源的副本MODPLUG_GIT_HASH := 9b08cc646c3dc94dd446ab0671e3427dae8a83fc
MODPLUG_URL := http://sourceforge.net/code-snapshots/git/m/mo/modplug-xmms/git.git/modplug-xmms-git-$(MODPLUG_GIT_HASH).zip
目前不存在。 (服务器宕机?)
我确实在下面找到了源的副本
http://sourceforge.net/projects/modplug-xmms/files/latest/download/libmodplug-0.8.8.4.tar.gz
我下载并手动安装:
../ios/ImportedSources/vlc/contrib/iPhoneSimulator-i386/libmodplug
【讨论】:
是的,我在解决我原来卡住的问题后也遇到了这个问题。我得到了 modplug-xmms 文件并将其放入我的保管箱中(dropbox.com/s/v2i55agdwe660ri/…)。将此文件放在 ~/ios/ImportedSources/vlc/contrib/tarballs 中,以便脚本可以继续运行。如果他/她想为 iOS 编译 VLC,希望这些经验可以节省他/她的时间。为 iOS 编译 VLC 真是太痛苦了。附言。使用我的 Dropbox 中的 xmms 文件来承担风险。 昨晚修复了这个问题。我只需要更新 ios.git 中的 libvlc 哈希,这将在几分钟后完成。【参考方案2】:这是 Xcode 5 的一个已知问题,我还没有修复它。
要解决此问题,请转到 ImportedSources/vlc/contrib/iPhoneSimulator-i386 并运行“make .freetype2”。之后,返回顶层目录并再次运行 buildAspen 脚本。
请注意,如果您决定稍后为 iOS 设备进行编译,则需要执行相同的操作(分别使用“iPhoneOS-armv7”和“iPhoneOS-armv7s”)。
我希望尽快解决这个问题。享受破解 iOS 版 VLC 吧!
【讨论】:
以上是关于iOS中VLC项目的编译错误的主要内容,如果未能解决你的问题,请参考以下文章