X264移植android问题记录(No working C compiler found)

原创 2015年07月09日 12:27:36

对于x264移植到android的步骤,大多数人都能按照文档一步步做下来,有的人能一步成功,有的则大费周折,甚至有的人止步于一些错误。


根据我的经验,这个过程最大的拦路虎就是错误“No working C compiler found”  所以在标题也加了这个,方便更多需要的人搜索到。


如果大家为这个头痛,希望大家把这篇blog看到最后,这个过程也是我犯错误和理解错误,直到最后解决的过程。


=======================================================================================================================

网上搜索了很多这方面的资料,不知道是ndk版本问题,还是x264代码版本的问题。网上的方法都不成功,直到遇到这篇帖子,简单的就解决了问题。


http://ubuntuforums.org/showthread.php?t=1757181


I just downloaded it from here to try it:

http://www.videolan.org/developers/x264.html

I ran ./configure. It complained that I didn't have an assembler and suggested I ran ./configure --disable-asm. Then all seemed to compile OK.

How did you install gcc? From the repositories?


其实,只要简简单单做几步就能编译出libx264.a了


1,下载x264的代码

2,解压到ubuntu的目录里, 我的是/home/seafit/project/x264lib

3,运行./configure  ,如果出错按照提示运行  ./configure --disable-asm.  然后就成功了。

4,运行make。  一会就编译出libx264.a了。


我的配置是ubuntu14.04  + android-ndk-r10 + x264的代码是昨天最新的。

============================================================================================================================


我编译出libx264.a之后,兴奋得不行,终于把问题解决了,所以一开始记录了上面的过程和解决办法。 但是突然发现上面编译出来的libx264.a是在linux下的,android下的libx264.a是需要交叉编译的,而上面根本就没有交叉编译。 其实也就是configure帮助里的3个重要的选项

Cross-compilation:
  --host=HOST              build programs to run on HOST
  --cross-prefix=PREFIX    use PREFIX for compilation tools
  --sysroot=SYSROOT        root of cross-build tree


如果,不加上面的参数,是可以直接一步到位编译出libx264.a的,


我配置的步骤一直是按照http://blog.csdn.net/huahuahailang/article/details/27373169 这篇文章来做的。每一步都按照做了,结果还是出“No working C compiler found” 

后来就仔细看configure文件,后来又看到了config.log 这个帮了很大的忙,里面能把路径完完全全显示出来。咋一看也没发现什么问题。因为以前经常做二进制编辑,所以我用notepad++的时候,总是会显示所有符号,对于换行,结尾等符号,notepad++是特别明显的,后来终于发现了每行结尾都是CRLF. 问题就出在这里。


NOTEPAD++的菜单->编辑->EOL conversion,里将格式选为unix格式,再编译,就通过了。 大家看到这个操作就知道是干嘛了。


这个问题隐藏得太深了,我折腾了几乎整整一天,本来一直寄希望于网上能找到解决办法,基本上google,百度等等都翻遍了。后来不得不硬着头皮自己解决,所以看日志才是真正找原因的办法。


另外 “No working C compiler found”  这个错误很容易让人疑惑,绝大多数人都会认为是编译工具找不到,实际不是。

具体的过程是生成一个conftest.c的文件,尝试编译这个文件,如果编译不过,或者找不到库文件,等等错误,都会报上面的错误。真是一个大坑。


最后,祝大家都能顺利解决。



win7+MinGW编译ffmpeg遇到的问题总结

1、编译x264的时候老是不通过,用mingw编译最新的x264,./configure 时出现“No working C compiler found”, 原因:找不到c编译器。 解决办法:首先请确...
  • dancing_night
  • dancing_night
  • 2015年04月02日 13:38
  • 3937

ubuntu 12.04 64位安装KLEE过程中遇到的问题

说明:按照官方文档 http://klee.github.io/getting-started/ 基于LLVM 2.9 安装KLEE,中间遇到了一些问题。问题一:llvm-gcc -v显示gcc-...
  • parker1234
  • parker1234
  • 2015年07月31日 08:47
  • 1050

nginx 交叉编译 ( 上 )

移植 nginx 到路由器上,交叉编译 的过程中碰到了不少的坑。一般编译 nginx 不会有太大的问题。但是因为 nginx 对交叉编译的支持不太好。 所以如果想 nginx 移植到其它环境中,会出现...
  • fish43237
  • fish43237
  • 2014年10月27日 21:41
  • 22258

Cmake “no cmake c_compiler could be found”,“无法打开输入文件”问题解决思路

最近在使用Cmake生成dilb.lib时,一直报错。然后找了很久都没找到答案 再仔细研究过错误代码之后,发现了这样一个问题。 首先cmake会有这样的提示“error in configurra...
  • iamubbTing
  • iamubbTing
  • 2017年12月04日 17:33
  • 138

Linux学习30_configure: error: no acceptable C compiler found in $PATH 问题解决

安装Python2.*时,遇到问题,提示configure: error: no acceptable C compiler found in $PATH, 然后找到以下解决方法: ...
  • wang_zhenwei
  • wang_zhenwei
  • 2016年03月30日 14:30
  • 990

configure: error: no acceptable C compiler found in $PATH

CentOS 6.5下升级glibc到glibc-2.14时,执行configure,提示如下错误:# ./configure checking build system type... x86_6...
  • testcs_dn
  • testcs_dn
  • 2016年02月19日 17:26
  • 5332

libsvm的make或者mex不成功(No supported compiler or SDK was found)

我们在进行机器学习或者数据挖掘的时候,我们总会用到svm的模型进行数据的挖掘和分析,但是我们使用SVM后,它只能二类的分类直接使用效果更好,但是我们往往是多类的分类。 那么我们就会采用libsvm工...
  • zhaomengszu
  • zhaomengszu
  • 2017年02月17日 10:22
  • 5009

在WinDOWS X64下 Cuda NVCC 与 Intel C/C++ compiler联合使用的问题

Intel C/C++ Compiler 无疑是高性能编译器,基于Cuda的GPU计算能力非凡,在VS2013下集成二等用于摄影测量问题求解,图像处理等密集计算问题,无疑是技术控们的不二选择。 本...
  • sgz007
  • sgz007
  • 2015年04月27日 22:33
  • 1358

android studio:no idea annotations attached to the jdk 1.8(C:\...),some issues will not be found

android studio:no idea annotations attached to the jdk 1.8(C:\...),some issues will not be found
  • qq_24712507
  • qq_24712507
  • 2016年12月26日 09:49
  • 762

No compatible targets were found,Do you wish to add a new Android Virtual Device?问题解决方法。

当一个android项目要在虚拟机上测试时,有时会发现提示No compatible targets were found,Do you wish to add a new Android Virtu...
  • AAbb895212798
  • AAbb895212798
  • 2016年03月16日 17:35
  • 2805
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:X264移植android问题记录(No working C compiler found)
举报原因:
原因补充:

(最多只允许输入30个字)