Ubuntu23.04编译VLC3.0.20的注意事项
重要的事情说在前面:自己搭建VLC的编译环境很难成功,我自己从头搭建重试了很多很多次,只有一次编译出来了,而且只编译出来了VLC本体,没有Web插件等。官方的wiki也很长时间没更新了,完全不适应新的版本,推荐使用Docket环境进行编译可参考我的另一篇文章使用Docket交叉编译Windows64的VLC3.0.21
错误处理
lua
configure: error: Could not find lua. Lua is needed for some interfaces (rc, telnet, http) as well as many other custom scripts. Use --disable-lua to ignore this error.
shell
sudo apt install liblua5.4-dev
liba52
configure: error: Could not find liba52 on your system: you may get it from http://liba52.sf.net/. Alternatively you can use --disable-a52 to disable the a52 plugin.
shell
wget http://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz
tar zxvf a52dec-0.7.4.tar.gz
cd a52dec-0.7.4
CFLAGS=-fPIC ./configure --enable-shared
make
make install
cd ..
xcb-shm
configure: error: Package requirements (xcb-shm) were not met:
Package 'xcb-shm', required by 'virtual:world', not found
shell
apt-get install libxcb-xv0-dev
apt-get install libxcb-composite0-dev libxcb-glx0-dev libxcb-dri2-0-dev libxcb-xf86dri0-dev libxcb-xinerama0-dev libxcb-render-util0-dev
xcb-randr
configure: error: Package 'xcb-randr', required by 'virtual:world', not found. Package 'xcb-xkb', required by 'virtual:world', not found. Pass --disable-xcb to skip X11 support.
shell
sudo apt-get install libxcb-randr0-dev libxcb-xkb-dev
alsa
configure: error: Package 'alsa', required by 'virtual:world', not found. alsa-lib 1.0.24 or later required. Pass --disable-alsa to ignore this error.
shell
apt-get install libasound2-dev
pkg-config
Error: "pkg-config" is not installed.
shell
apt-get install pkg-config
flex
ERROR: flex is not installed.
shell
sudo apt-get install flex
bison
ERROR: GNU bison is not installed.
shell
sudo apt-get install bison
bootstrap
./bootstrap: 78: autoreconf: not found
shell
sudo apt update
sudo apt install autoconf
c++14
configure: error: *** A compiler with support for C++14 language features is required
shell
sudo apt-get install build-essential
dlopen LT_INIT
./configure: line 12019: syntax error near unexpected token dlopen' ./configure: line 12019:
LT_INIT(dlopen win32-dll shared disable-static)'
shell
sudo apt-get update
sudo apt-get install libtool
libmad
configure: error: Could not find libmad on your system
shell
wget ftp://ftp.mars.org/pub/mpeg/libmad-0.15.1b.tar.gz
tar -xzvf libmad-0.15.1b.tar.gz
cd libmad-0.15.1b
./configure
# ----------------
vim Makefile
:129
将-fforce-mem删除
# ----------------
make
make install