文章目录
- 一.离线安装nasm
- 二.离线编译 FFmpeg
- 三. 升级GCC
一.离线安装nasm
安装汇编编译器:nasm官网
nasm-3.01.tar.gz
tar-zxvf nasm-3.01.tar.gzcdnasm-3.01/# 编译./configure --prefix=/usr/local/nasmmake-j$(nproc)makeinstall# 加入路径echo'export PATH=/usr/local/nasm/bin:$PATH'>>/etc/profilesource/etc/profile# 验证nasm -v二.离线编译 FFmpeg
ffmpeg官网选择合适系统的 ffmpeg_x.x.x.orig.tar.xz
tar-xvf ffmpeg_7.1.1.orig.tar.xzcdffmpeg-7.1/# 要编译内置哪些功能自行查找网络相关配置# 我仅需要 wav的标准化,统一响度,降噪,16k频率,降噪即可./configure\--prefix=/usr/local/ffmpeg\--enable-gpl\--enable-version3\--disable-debug\--disable-doc\--enable-static\--disable-ffplay# 编译&安装make-j$(nproc)makeinstall# 加入PATHecho'export PATH=/usr/local/ffmpeg/bin:$PATH'>>/etc/profilesource/etc/profile# 验证关键功能是否都支持。这是我需要的,自行参考网络ffmpeg -filters|grepanlm ffmpeg -filters|greploudnorm ffmpeg -encoders|greppcm_s16le三. 升级GCC
在联网linux服务器执行以下脚本
安装编译前置工具sudo apt-get install build-essential libgmp-dev libmpfr-dev libmpc-dev flex bison texinfo
#!/bin/bashset-e# 可修改的变量GCC_VERSION="8.5.0"PREFIX="/usr/local/gcc-8.5.0"BUILD_DIR="$HOME/build_gcc8"mkdir-p"$BUILD_DIR"cd"$BUILD_DIR"# 安装依赖(Ubuntu/Debian)sudoaptupdatesudoaptinstall-y build-essential libgmp-dev libmpfr-dev libmpc-dev flex bisonwgettar# 安装依赖 (centos)#sudo yum groupinstall -y "Development Tools"#sudo yum install -y wget tar gmp-devel mpfr-devel libmpc-devel flex bison# 下载 GCC 源码wget-c https://ftp.gnu.org/gnu/gcc/gcc-${GCC_VERSION}/gcc-${GCC_VERSION}.tar.gztar-xf gcc-${GCC_VERSION}.tar.gzcdgcc-${GCC_VERSION}# 下载 prerequisites./contrib/download_prerequisites# 创建构建目录mkdir-p build&&cdbuild# 配置../configure --prefix=${PREFIX}\--disable-multilib\--enable-languages=c,c++\--with-gmp=../gmp\--with-mpfr=../mpfr\--with-mpc=../mpc# 编译make-j$(nproc)# 安装到指定目录makeinstall# 打包cd$(dirname${PREFIX})tar-czf gcc8-portable.tar.gz$(basename${PREFIX})echo"GCC 8 portable 已生成:$(pwd)/gcc8-portable.tar.gz"若执行./contrib/download_prerequisites太慢.可以使用如下命令
# GMPwget-c https://mirrors.tuna.tsinghua.edu.cn/gnu/gmp/gmp-6.1.0.tar.bz2# MPFRwget-c https://mirrors.tuna.tsinghua.edu.cn/gnu/mpfr/mpfr-3.1.4.tar.bz2# MPCwget-c https://mirrors.tuna.tsinghua.edu.cn/gnu/mpc/mpc-1.0.3.tar.gz# isl 很多镜像源没找到,直接使用最后一行指令下载吧wget-c https://ftpmirror.gnu.org/gnu/isl/isl-0.18.tar.bz2 ./contrib/download_prerequisites在内网服务器使用
# 假设你拷贝到 /tmpsudotar-xzf /tmp/gcc8-portable.tar.gz -C /# 设置环境变量exportPATH=/opt/gcc-8/bin:$PATHexportLD_LIBRARY_PATH=/opt/gcc-8/lib64:$LD_LIBRARY_PATH# 验证gcc --version# 输出 8.5.0