ubuntu 12.04 下编译 android vlc(libvlc) 小结:

来源:互联网 发布:net.sf.json官方下载 编辑:程序博客网 时间:2024/05/23 05:09
ubuntu 12.0.4 下编译 android vlc(libvlc) 小结:
1.总体流程参考vlc官方编译指南:https://wiki.videolan.org/AndroidCompile/
2.出现的问题即个人解决办法:
2.1:检查是否是目录权限设置不正确  递归修改指定目录及其子目录所属用户及用户组权限命令 chown -R username:groupname  yourdir
2.2:检查环境变量(路径)是否配置错误 在~/.bashrc中设置 设置完后用命令:source .bashrc使之生效
2.3:是否是所需工具没有下载   sudo apt-get install toolname
2.4:如果提示没有安装指定工具,但执行2.3 又显示已安装最先版,可以先用卸载并清除配置命令:sudo apt-get remove --purge softnamelist, 然后再次编译

2.5:具体问题还可参考附录2(从网上复制,由于多次转载,具体出入不详,没有提供原始连接,虽然没帮我解决实际问题,但同样感谢原始作者)


问题举例:

protoc not found

且无法自动下载

可以手动下载protobuf-2.6.0.tar.bz2到android/vlc/tools/目录下,继续执行sh ./complish


附录1:
chown [-cfhvR] [--help] [--version] user[:group] file...
user : 新的档案拥有者的使用者 ID   group : 新的档案拥有者的使用者群体(group)   -c : 若该档案拥有者确实已经更改,才显示其更改动作   -f : 若该档案拥有者无法被更改也不要显示错误讯息   -h : 只对于连结(link)进行变更,而非该 link 真正指向的档案   -v : 显示拥有者变更的详细资料   -R : 对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)   --help : 显示辅助说明   --version : 显示版本

附录2:
configure.ac:10: error: possibly undefined macro: AC_PROG_LIBTOOL  
If this token and others are legitimate, please use m4_pattern_allow.  
See the Autoconf documentation.  
+ automake --foreign --copy --add-missing -Woverride  
src/common/compress/Makefile.am:9: Libtool library used but `LIBTOOL' is undefined  
src/common/compress/Makefile.am:9: The usual way to define `LIBTOOL' is to add `AC_PROG_LIBTOOL'  
src/common/compress/Makefile.am:9: to `configure.ac' and run `aclocal' and `autoconf' again.  
src/common/compress/Makefile.am:9: If `AC_PROG_LIBTOOL' is in `configure.ac', make sure  
src/common/compress/Makefile.am:9: its definition is in aclocal's search path.  
 
这个问题我也找了好久,最后看到两篇文章,记录下来:
观点一:
原因分析
aclocal是个扫描程序, 负责扫描configure.ac中所有的宏定义并展开,
上面产生的原因就是找不到LIBTOOL宏的定义之处造成的.
 
原因就是aclocal与libtool没有安装在一个相同目录下面
 
aclocal是去默认 安装目录 /usr/share/aclocal下面搜索所有的.m4文件找所定义的宏,
 
但是由于安装了多个aclocal,可能aclocal目录不存在,实际目录为/usr/share/aclocal1.10等,
这就造成了aclocal找不到m4文件的情况, 解决办法就是将文件夹aclocal1.10重命名为aclocal.
 
或者显示指定路径 aclocal -I /usr/share/aclocal1.10 -I /usr/share/libtool/m4 --install
 
或者把/usr/share/libtool/m4下面的文件都copy至/usr/share/aclocal1.10中.
 
观点二:
出现这个问题的原因主要有两个:
1.没有安装aclocal
解决方法:安装libtool
2.没有配置正确aclocal的库LIBTOOL.m4的路径
 
解决方法:
—-查看aclocal的路径 aclocal --print-ac-dir
—-如果相应的*.m4文件不在这个目录下,则重新配置路径,或是将相应的*.m4文件复制到这个路径下 (aclocal -I DIR)

0 0
原创粉丝点击