我正在尝试自动部署带有 nvidia gpu 的服务器以进行视频转码,并且需要从具有 nvcc 支持的源代码构建 ffmpeg。
我已经让 bash 脚本运行到我尝试构建 ffmpeg 的阶段。我以 root 用户身份运行该脚本,但需要确保所有用户都可以使用 ffmpeg。
这是脚本的这一部分...
printf "Installing FFMPEG with Nvidia Support\n"
cd /root/tmp/build
git clone https://github.com/FFmpeg/nv-codec-headers.git nv-codec-headers
cd nv-codec-headers && make install
mkdir /root/tmp/build/ffmpeg_sources
cd /root/tmp/build/ffmpeg_sources && \
wget -O ffmpeg-snapshot.tar.bz2 https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 && \
tar xjvf ffmpeg-snapshot.tar.bz2 && \
cd ffmpeg && \
PATH="$HOME/bin:$PATH" \
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" \
./configure \
--prefix="$HOME/build/ffmpeg_build" \
--pkg-config-flags="--static" \
--extra-cflags="-I$HOME/build/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/build/ffmpeg_build/lib" \
--extra-libs="-lpthread -lm" \
--ld="g++" \
--bindir="/usr/bin" \
--enable-gpl \
--enable-cuda-nvcc \
--extra-cflags=-I/usr/local/cuda/include \
--extra-ldflags=-L/usr/local/cuda/lib64 \
--enable-gnutls \
--enable-libaom \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libx264 \
--enable-libx265 \
--enable-nonfree && \
PATH="$HOME/bin:$PATH" make && \
make install && \
hash -r
一切正常,直到运行配置,进程就终止了
make: *** [ffbuild/common.mak:78: libavfilter/vf_premultiply.o] Terminated
每次似乎都不一样,但如果我手动运行它,它似乎可以工作。
是什么原因造成的?