ubuntu 安装上传的 ffmpeg_7.1.1.orig.tar.xz并使用

在 Ubuntu 系统上离线安装 make 需要提前准备好所有依赖包。以下是详细的操作步骤:


准备工作:在有网络的机器上下载所需软件包

  1. 查找依赖关系

    在有网络的 Ubuntu 机器上(需与目标机器相同版本)执行:

    bash 复制代码
    # 获取 make 及其依赖包列表
    apt-get install --reinstall -d make
  2. 下载所有依赖包

    bash 复制代码
    # 创建下载目录
    mkdir ~/make-offline
    cd ~/make-offline
    
    # 下载 make 及其所有依赖
    apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests make | grep "^\w" | sort -u)
  3. 复制到离线机器

    将整个 make-offline 目录打包复制到离线 Ubuntu 机器:

    bash 复制代码
    tar cvf make-offline.tar make-offline

离线安装步骤

  1. 解压软件包

    在离线机器上:

    bash 复制代码
    tar xvf make-offline.tar
    cd make-offline
  2. 安装依赖包

    bash 复制代码
    # 安装所有 .deb 包(按依赖顺序安装)
    sudo dpkg -i *.deb
    
    # 修复可能的依赖问题
    sudo apt-get install -f --allow-unauthenticated
  3. 验证安装

    bash 复制代码
    make --version
    # 应输出类似: GNU Make 4.3

备选方案:从源码编译安装(无需 apt)

如果无法获取预编译包,可直接编译源码:

  1. 下载源码包

    在有网络的机器下载:

    bash 复制代码
    wget http://ftp.gnu.org/gnu/make/make-4.4.1.tar.gz
  2. 复制到离线机器并解压

    bash 复制代码
    tar xvf make-4.4.1.tar.gz
    cd make-4.4.1
  3. 编译安装

    bash 复制代码
    # 配置
    ./configure --prefix=/usr/local
    
    # 编译
    make
    
    # 安装
    sudo make install
    
    # 创建符号链接
    sudo ln -s /usr/local/bin/make /usr/bin/make
  4. 验证

    bash 复制代码
    make --version

常见问题解决

  1. 依赖缺失错误

    如果 dpkg -i 报错,检查缺失的包名,从有网机器下载对应 .deb 包补充到离线目录后重试。

  2. /usr/bin/make 已存在

    备份原文件:

    bash 复制代码
    sudo mv /usr/bin/make /usr/bin/make.bak
    sudo ln -s /usr/local/bin/make /usr/bin/make
  3. 编译 make 时报错

    确保有基本编译工具:

    bash 复制代码
    # 离线安装 gcc 和 libc-dev(需按同样方法提前准备)
    sudo dpkg -i gcc_*.deb libc-dev*.deb

关键提示

  1. 系统版本匹配

    下载依赖包的 Ubuntu 版本必须与离线机器完全一致(可通过 lsb_release -a 查看)

  2. 架构匹配

    确保都是 amd64 或 arm64 架构(通过 uname -m 查看)

  3. 最小化依赖

    基础系统需要以下核心包(如果连这些都没有,需优先安装):

    复制代码
    libc6, gcc, binutils, libgcc
  4. 批量下载工具

    完整下载命令(包含所有递归依赖):

    bash 复制代码
    apt-get download $(apt-rdepends make | grep -v "^ " | sort -u)

按照这些步骤操作,即可在完全离线的 Ubuntu 系统上成功安装 make

相关推荐
AlfredZhao1 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐2 天前
Linux内存扩容指南
linux
zylyehuo2 天前
Linux 彻底且安全地删除文件
linux
Mahut3 天前
我用 Electron + FFmpeg 做了一个本地视频处理工作站 ClipForge
前端·ffmpeg·electron
用户805533698033 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297913 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者5 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo5 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10156 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao7 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone