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

相关推荐
dllmayday1 小时前
Linux 上用终端连接 WiFi
linux·服务器·windows
峥无2 小时前
Linux系统编程基石:静态库·动态库·ELF文件·进程地址空间全景图
linux·运维·服务器
用户2367829801682 小时前
从 chmod 755 说起:Unix 文件权限到底是怎么算的?
linux
Strugglingler3 小时前
【systemctl 学习总结】
linux·systemd·systemctl·journalctl·unit file
全球通史3 小时前
RDKS100 GPU量化环境配置
ubuntu
嵌入式×边缘AI:打怪升级日志4 小时前
100ASK-T113 Pro 开发板 Bootloader 完全开发指南
linux·ubuntu·bootloader
charlie1145141915 小时前
Linux 字符设备驱动:cdev、设备号与设备模型
linux·开发语言·驱动开发·c
handler015 小时前
Linux 内核剖析:进程优先级、上下文切换与 O(1) 调度算法
linux·运维·c语言·开发语言·c++·笔记·算法
zhouwy1135 小时前
Linux进程与线程编程详解
linux·c++
我星期八休息6 小时前
IT疑难杂症诊疗室:AI时代工程师Superpowers进化论
linux·开发语言·数据结构·人工智能·python·散列表