VLC编译踩过的坑

如果在编译工具安装阶段编不过,请相信代码没有问题,问题基本都是编译环境的。
反复尝试都编译不过可以使用以下办法:

环境需要安装以下工具:
autoconf,automake,m4,libtool,pkg-config,
cmake,ragel,protoc,ant,xz

哪个没有或者版本过高过低都会出错,却少的会在编译一开始列出,如:autoconf not find ant too old…

可以尝试以下办法自行安装工具:

xcode-select —install 安装command line tool
可以用brew安装一部分,brew里面没有的用下面方法安装

安装:autoconf
curl -O http://mirrors.kernel.org/gnu/autoconf/autoconf-2.69.tar.gz
tar -xzvf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure
make
sudo make install

安装:automake
curl -O http://downloads.videolan.org/pub/contrib/automake/automake-1.15.tar.gz
tar -xzvf automake-1.15.tar.gz
cd automake-1.15
./configure
make
sudo make install

安装:libtool,系统自带,实在不过再安装,可能会冲突
curl -O http://mirrors.kernel.org/gnu/libtool/libtool-2.4.2.tar.gz
tar -xzvf libtool-2.4.2.tar.gz
cd libtool-2.4.2
./configure
make
sudo make install

安装:m4
curl -O http://mirrors.kernel.org/gnu/m4/m4-1.4.16.tar.gz
tar -xzvf m4-1.4.16.tar.gz
cd m4-1.4.16
./configure
make
sudo make install

安装:protobuf,需要安装低版本,高版本库更新了编译不过
例如:
stream_out/chromecast/cast_channel.pb.h:1133:46: error: too many arguments to function call, expected 0, have 1
return client_auth_certificate_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
重新安装低版本
curl -O http://downloads.videolan.org/pub/contrib/protobuf/protobuf-3.1.0.tar.gz
tar -xzvf protobuf-3.1.0.tar.gz
cd protobuf-3.1.0
./configure
make
sudo make install

其他:
安装后的工具位于/usr/bin/

你可能感兴趣的:(VLC编译踩过的坑)