ffmpeg

--disable-yasm --enable-debug=3 --disable-stripping --disable-optimizations --prefix=/myXvdb/workspace/ffmpeg/ff

 

./configure --prefix=/myXvdb/workspace/ffmpeg/libx264/myx264 --disable-asm --enable-shared

 

./configure --prefix=/myXvdb/workspace/ffmpeg/ff_3.4.2 --disable-yasm --enable-debug=3 --disable-stripping --disable-optimizations --enable-gpl --enable-libx264 --extra-cflags=-I/myXvdb/workspace/ffmpeg/libx264/myx264/include --extra-ldflags=-L/myXvdb/workspace/ffmpeg/libx264/myx264/lib

 

./configure --prefix=/myXvdb/workspace/ffmpeg/ff_3.4.2 --disable-yasm --enable-debug=3 --disable-stripping --disable-optimizations --enable-gpl --enable-libx264 --enable-libfdk-aac --enable-nonfree --extra-cflags=-I/myXvdb/workspace/ffmpeg/libx264/myx264/include --extra-ldflags=-L/myXvdb/workspace/ffmpeg/libx264/myx264/lib --extra-cflags=-I/myXvdb/workspace/ffmpeg/aac/fdkaac/include --extra-ldflags=-L/myXvdb/workspace/ffmpeg/aac/fdkaac/lib

 

 

在编译带lib-idk-aac、x264、x265的FFMPEG时出现

 

WARNING: using libfdk without pkg-config

 

WARNING: using libx264 without pkg-config

 

ERROR: x265 not found using pig-config

 

原因是需要设置 PKG_CONFIG_PATH,通过pkg-config去指定路径自动寻找需要链接的依赖库,同时,就不需要使用

 

--extra-cflags=-I、

 

--extra-cxxflags=-I、

 

--extra-ldflags=-L来指定依赖库路径

 

使用方法:在./configure之前输入export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH(此路径为.pc文件所在路径),可使用

 

echo $PKG_CONFIG_PATH查看

 

msys 编译ffmpeg3.4.2出现下面错误。

gcc.exe: error: libavcodec/vp3dsp.: No such file or directory

 

解决步骤:

1.把 Makefile中的

 

$(foreach D,$(FFLIBS),$(eval $(call DOSUBDIR,lib$(D))))改为

$(eval $(call DOSUBDIR,libavcodec))

把library.mak中的$$(LD) $(SHFLAGS) $(LDFLAGS) $(LDLIBFLAGS) $$(LD_O) $$(filter %.o,$$^) $(FFEXTRALIBS)

改成

gcc $(SHFLAGS) $(LDFLAGS) $(LDLIBFLAGS) $$(LD_O) $(OBJS) -Ld:/usr/x264/lib $(SLIBOBJS)  $(FFEXTRALIBS)

 

修改后,执行mingw32-make,libavcodec.dll就可以编译通过,接着libavdev会编译报错。

2.把第一步的修改还原,继续完成libavdevice,libavfilter在编译。

 

额外话题,makefile可以用 $(warning xxxxx),$(error xxxxx)来打印调试。