交叉编译x264
来源:互联网 发布:python error code 1 编辑:程序博客网 时间:2024/06/13 01:11
1.配置
./configure --prefix=/usr/local/arm/3.4.1/arm-linux/ --enable-shared --enable-debug
我这里打开了动态链接和debug。前者可以生成libx264.so,后者可以在你调程序用gdb的时候step into库函数里。
2.修改配置参数
修改config.mak:
prefix=/usr/local/arm/3.4.1/arm-linux/
exec_prefix=${prefix}
bindir=${exec_prefix}/bin
libdir=${exec_prefix}/lib
includedir=${prefix}/include
# 这里改为ARM
ARCH=ARM
SYS=LINUX
# 这里改为arm-linux-gcc
CC=arm-linux-gcc
# 这里去掉-DHAVE_MMXEXT -DHAVE_SSE2 -DARCH_X86
CFLAGS=-Wall -I. -O4 -ffast-math -D__X264__ -DHAVE_MALLOC_H -DSYS_LINUX -DHAVE_PTHREAD -s -fomit-frame-pointer
LDFLAGS= -lm -lpthread -s
AS=nasm
ASFLAGS=-O2 -f elf
VFW=no
GTK=no
EXE=
VIS=no
HAVE_GETOPT_LONG=1
DEVNULL=/dev/null
CONFIGURE_ARGS= '--enable-shared' '--prefix=/usr/local/arm/3.4.1/arm-linux/'
SONAME=libx264.so.49
default: $(SONAME)
修改Makefile,将66~68行的ar和ranlib改为arm下的:
libx264.a: .depend $(OBJS) $(OBJASM)
arm-linux-ar rc libx264.a $(OBJS) $(OBJASM)
arm-linux-ranlib libx264.a
3、修改X264程序,首先对程序进行一些地方的修改,否则会出现关于cpu_set_t的错误,关于cpu_set_t的以下那段代码是关于计算CPU内核数的代码,所以将np=1(我们所使用的计算机都是单核)直接返回,而没有用它的计算, #elif defined(SYS_LINUX) unsigned int bit; int np; cpu_set_t p_aff; memset( &p_aff, 0, sizeof(p_aff) );sched_getaffinity( 0, sizeof(p_aff), &p_aff );for( np = 0;bit = 0; bit < sizeof(p_aff); bit++ );np += (((uint8_t *)&p_aff)[bit / 8] >> (bit % 8)) & 1;return np;改成了:#elif defined(SYS_LINUX) int np;np=1; return np;
- 交叉编译安装x264
- 交叉编译x264
- 交叉编译 ffmpeg x264
- 交叉编译 ffmpeg x264
- zlib x264 交叉编译
- 交叉编译x264
- 交叉编译 x264
- 交叉编译x264(二)
- ubuntu xvid x264 交叉编译
- ffmpeg+speex+x264+libilbc交叉编译大杂烩
- ffmpeg+xvid+x264交叉编译全过程
- ffmpeg+xvid+x264交叉编译全过程
- hi3516a之ffmpeg x264交叉编译
- ubuntu 交叉编译x264 faac ffmpeg
- 交叉编译ffmpeg:aac x264 x265
- linux下x264库ARM交叉编译
- x264的交叉编译和移植
- 使用交叉编译环境编译支持多线程的x264版本
- Windows常用的命令
- boost::any 与 boost::variant 的区别
- linux 下安装eclipse
- SMTP POP3 命令简介
- typical write device driver
- 交叉编译x264
- 用JavaMail发送带附件的Email
- Boost::Variant
- 【C#基础知识扫盲点】string与StringBuilder区别
- 字节对齐
- Android 学习视频网站(需下载电驴的)
- 公共语言运行库中的程序集-04强命名的程序集
- 去掉字符串中重复字符
- Linux内核OOPS调试