【发布时间】:2015-01-22 20:04:34
【问题描述】:
我正在根据 Ubuntu 14.04 上的以下建议为 Android 编译 VLC
https://wiki.videolan.org/AndroidCompile
export ANDROID_SDK=/home/user/my/tools/android-sdk
export ANDROID_NDK=/home/user/my/tools/android-ndk-r9c
export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools
export ANDROID_ABI=armeabi-v7a
export NO_FPU=0
git clone git://git.videolan.org/vlc-ports/android.git
sh compile.sh
但我收到以下错误
gcc -std=gnu99 -I. -g -O2 -MT freading.o -MD -MP -MF .deps/freading.Tpo -c -o freading.o freading.c
gcc -std=gnu99 -I. -g -O2 -MT gl_list.o -MD -MP -MF .deps/gl_list.Tpo -c -o gl_list.o gl_list.c
mv -f .deps/gl_list.Tpo .deps/gl_list.Po
In file included from clean-temp.h:22:0,
from clean-temp.c:23:
./stdio.h:477:1: error: 'gets' undeclared here (not in a function)
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
^
gcc -std=gnu99 -I. -g -O2 -MT localcharset.o -MD -MP -MF .deps/localcharset.Tpo -c -o localcharset.o localcharset.c
In file included from freadahead.h:18:0,
from freadahead.c:20:
./stdio.h:477:1: error: 'gets' undeclared here (not in a function)
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
^
In file included from freading.h:18:0,
from freading.c:20:
./stdio.h:477:1: error: 'gets' undeclared here (not in a function)
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
^
make[4]: *** [freading.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: *** [freadahead.o] Error 1
我唯一没有尝试过的是更新 NDK 或切换到 CrystaX NDK。
PS 我有 NDK r9(根据项目页面上的建议),但在编译失败后我得到了最新的 r10d 和同样的问题。
我git checkout tags/1.0.0 和git checkout tags/0.9.9。
我有 Ubuntu 14.04 64 位。
【问题讨论】:
-
如果您仍在寻找解决方案,请参阅stackoverflow.com/a/30350687/1893766
-
谢谢。我已经放弃了 VLC,但如果它能够编译它可能会有所帮助。
标签: android android-ndk libvlc