当前位置: 首页 > news >正文

Centos7 编译安装Cmake+ffmpeg

1、系统准备

安装好Centos7.9,并打好系统补丁,安装一些常用工具,关闭防火墙,

yum -y update yum -y install git yum -y install vim yum -y install unzip yum -y install net-tools yum -y install wget yum -y install openssl-devel yum -y install bzip2 gcc gcc-c++ gmp-devel mpfr-devel libmpc-devel make cmake yum -y install zlib yum -y install zlib-devel

关闭SELINUX

getenforce ##查看下状态 vim /etc/selinux/config ##修改配置文件,将SELINUX=enforcing改为SELINUX=disabled reboot ##重启后生效

关闭防火墙

systemctl status firewalld.service ##查看防火墙运行状态 systemctl disable firewalld.service ##从下次开始关闭防火墙 systemctl stop firewalld.service ##关闭防火墙

2、yum安装gcc8

添加上CentOS SCLo RH库,装上gdb8的依赖devtoolset-8-build

sudo yum -y install centos-release-scl-rh sudo yum -y install devtoolset-8-build

安装相应的gdb

sudo yum -y install devtoolset-8-gdb

同样,也可以安装相应版本的gcc-g++

sudo yum -y install devtoolset-8-gcc devtoolset-8-gcc-c++

yum安装完后,原来的gcc不覆盖,所以需要执行enable脚本更新环境变量

sudo source /opt/rh/devtoolset-8/enable ##有时候提示没有文件,需要进入到目录下运行source enable既可 cd /opt/rh/devtoolset-8/ source enable gcc -version ##检查gcc 版本是否切换到 gcc 8了 scl enable devtoolset-8 bash ##或者这个命令启用

可以通过加入到profile里面开机自动source,vim /etc/profile, 跳到最后一行加入以下内容

source /opt/rh/devtoolset-8/enable

3、安装Cmake 3.21.0

下载源码包并编译安装

cd /home wget https://github.com/Kitware/CMake/releases/download/v3.21.0-rc3/cmake-3.21.0-rc3.tar.gz tar -xvf cmake-3.21.0-rc3.tar.gz mv cmake-3.21.0-rc3 cmake ##重新命名包 cd cmake ./bootstrap make -j4 make install cd /home/cmake/bin cmake ##测试cmake,如下文,则安装正常。 ##Usage ## cmake [options] <path-to-source> ## cmake [options] <path-to-existing-build> ## cmake [options] -S <path-to-source> -B <path-to-build> ##Specify a source directory to (re-)generate a build system for it in the ##current working directory. Specify an existing build directory to ##re-generate its build system. ##Run 'cmake --help' for more information.

4.安装ffmpeg

4.1、编译安装

创建编译目录

cd /home mkdir ffmpeg_sources/ cd /home/ffmpeg_sources/

安装NASM

curl -O -L https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.bz2 tar -xvf nasm-2.14.02.tar.bz2 yum -y install autoconf automake libtool cd nasm-2.14.02 ./autogen.sh ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" make -j4 make install

安装Yasm

cd /home/ffmpeg_sources curl -O -L https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz tar -xvf yasm-1.3.0.tar.gz cd yasm-1.3.0 ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" make -j4 make install

安装libx264

cd /home/ffmpeg_sources git clone --depth 1 https://code.videolan.org/videolan/x264.git cd x264 PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static make -j4 make install

安装libx265

cd /home/ffmpeg_sources git clone https://github.com/videolan/x265.git cd /home/ffmpeg_sources/x265/build/linux cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source make -j4 make install

安装libfdk_aac

cd /home/ffmpeg_sources git clone --depth 1 https://github.com/mstorsjo/fdk-aac cd fdk-aac autoreconf -fiv ./configure --prefix="$HOME/ffmpeg_build" --disable-shared make -j4 make install

安装libmp3lame

cd /home/ffmpeg_sources curl -O -L https://downloads.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz tar -xvf lame-3.100.tar.gz cd lame-3.100 ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --disable-shared --enable-nasm make -j4 make install

安装libopus

cd /home/ffmpeg_sources curl -O -L https://archive.mozilla.org/pub/opus/opus-1.3.1.tar.gz tar -xvf opus-1.3.1.tar.gz cd opus-1.3.1 ./configure --prefix="$HOME/ffmpeg_build" --disable-shared make -j4 make install

安装libvpx

cd /home/ffmpeg_sources git clone https://github.com/webmproject/libvpx.git cd libvpx ./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests --enable-vp9-highbitdepth --as=yasm make -j4 make install

下载并编译ffmpeg

cd /home/ffmpeg_sources curl -O -L https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 tar -xvf ffmpeg-snapshot.tar.bz2 cd ffmpeg export PATH="$HOME/bin:$PATH" export PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \ --prefix="$HOME/ffmpeg_build" \ --pkg-config-flags="--static" \ --extra-cflags="-I$HOME/ffmpeg_build/include" \ --extra-ldflags="-L$HOME/ffmpeg_build/lib" \ --extra-libs=-lpthread \ --extra-libs=-lm \ --bindir="$HOME/bin" \ --enable-gpl \ --enable-libfdk_aac \ --enable-libmp3lame \ --enable-libopus \ --enable-libvpx \ --enable-libx264 \ --enable-libx265 \ --enable-nonfree make -j4 make install ##最终编译完安装路劲在/root/bin 下面。上面的配置参数$HOME,为当前用户的根目录,则root账号在root文件夹下面
http://www.cnnetsun.cn/news/3629616.html

相关文章:

  • windows系统下搭建Python开发环境
  • REFramework终极指南:如何为RE引擎游戏安装模组和脚本平台
  • 如何在Mac上实现窗口置顶:Topit完整使用指南与效率提升技巧
  • 告别重复操作:BetterGI如何用AI技术解放你的原神游戏时间
  • this关键字
  • 终极本地图片搜索神器:5分钟掌握千万级图库秒搜技巧
  • 声源定位从“实验室“到“产品化“:AR1106如何用极简设计降低智能交互的准入门槛
  • ERP 专家:懂 SAP、精 Oracle EBS、通华为 MetaERP—— 同时掌握国际两大顶级 ERP,又吃透国产顶级替代方案,属于现在企业数字化转型里很稀缺的 “三栖” 顾问 / 架构师。下面
  • springboot常德特色旅游服务平台13723--计算机课题设计/毕业设计
  • 如何让老旧iPhone/iPad重获新生:Legacy iOS Kit完整使用教程
  • 【Rust中级教程】2.11. API设计原则之受约束性(constrained) Pt.2:封闭trait(sealed trait)、重新导出(re-exports)、自动trait
  • 131号文件落地,医疗设备行业告别“躺赚”时代
  • 如何一键切换游戏DLSS版本?DLSS Swapper深度揭秘与实战指南
  • AMD Ryzen SMUDebugTool:硬件级调试与性能调优完全指南
  • Windows Cleaner:开源系统优化解决方案,彻底解决C盘空间不足问题
  • 从“知识幻觉”到“真理硬度”:基于贾子理论的AI认知操作系统批判与重构
  • 完全指南:5分钟掌握免费在线EPUB编辑器EPubBuilder
  • minio跨域问题处理
  • ServiceNow等机构造了一套“考场“,专门给视觉语言模型出难题
  • 如何实现30+平台自动签到:青龙面板一站式解决方案完全指南
  • 如何用DyberPet打造你的专属桌面宠物?5分钟快速上手完整指南
  • 企业级Figma转代码平台:多框架智能转换的工程化实践
  • NoSleep防休眠工具:告别Windows自动休眠的智能解决方案
  • 系统学习ROS第二章 :ROS通讯机制
  • Code date creation的开发技术介绍
  • 如何在Mac上实现窗口置顶:Topit免费开源工具的终极指南
  • Python agate-excel 包完全指南:功能、安装、语法与实战案例
  • 如何从三星恢复永久删除的照片?
  • 基于Java的宠物用品系统的设计与实现任务书
  • 我们在 Workbuddy 做了个 Skill,10 分钟摸透一个行业!