如何实现make工具的降版本?

2023-10-27

为什么要降make版本?因为编译MTK 平台的Android source code报错,而且是莫名奇妙的错误,困扰很久。

一、问题背景

Ubuntu 15.04以上的make版本都已经是4.0+,官方目前推荐的编译环境还是基于Ubuntu 14.04,虽然15.04以上也是可以编译的,但是MTK的某些平台会编译通过。

二、如何更新make?

1、下载make 3.81
make工具的官方镜像地址:http://ftp.gnu.org/gnu/make/ ,下载指定版本的make源码包,这里我们下载make-3.81.tar.gz。

2、解压make源码包
Ubuntu桌面环境直接右键解压即可,也可以打开shell到所在目录,执行:

$tar xvf make-3.81.tar.gz


3、执行configuration

$./configuration

4、执行build.sh

$sh build.sh

5、安装make
执行:

$sudo make install

即可安装make。有看到有人到这一步先执行卸载make的操作,一是没必要,新旧make是独立的,安装后新make会首先执行,二是先卸载make,还怎么执行安装。也不必执行什么update-alternatives和替换make的操作,这样不再需要新装的make,直接卸载,系统会恢复原装的make。

三、如何卸载make install安装的make

make install安装的程序如果需要卸载,一般需要以上第四步执行build.sh后的包,再执行:

$sudo make uninstall

即可完成卸载(需要程序支持,很幸运make程序是支持的),所以一般建议保留安装时的安装包。

border="0" width="330" height="86" src="http://music.163.com/outchain/player?type=2&id=21301195&auto=1&height=66">
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何实现make工具的降版本? 的相关文章

随机推荐

  • selenium面试题

    今天有同学问到seleinum面试的时候会问到的问题 随便想了想 暂时纪录一下 欢迎大家在评论中提供更多问题 回复是我自己的答案 如果大家有什么好的看法 可以留言交流 去哪儿的面试题 selenium中如何判断元素是否存在 selenium
  • 【C++】 探索程序 详细解读程序在运行过程中都发生了什么

    目录 头文件 源代码 头文件重复包含 问题 解决方案 程序生成过程 预处理Preprocessi 编译Compilation 汇编Assembly 链接Linking 编译期 运行期 编译期确定 运行期确定 编译期错误 运行期错误 类和对象
  • 解决某些软件无法在parallels desktop虚拟机下运行

    步骤1 打开注册表 点开始菜单 点运行 输入regedit exe后回车 步骤2 找到HKEY LOCAL MACHINE HARDWARE DESCRIPTION System 步骤3 找到右边的VideoBiosVersion 双击打开
  • 【计算机视觉

    文章目录 一 Precision Recall 和 F1 score 二 IoU 三 mAP 四 AP 4 1 定义 4 2 分类 4 2 1 APs 4 2 2 APr 4 2 3 两者之间的区别 一 Precision Recall 和
  • Linux Shell 常用命令总结

    1 find find pathname options print exec ok 让我们来看看该命令的参数 pathname find 命令所查找的目录路径 例如用 来表示当前目录 用 来表示系统根目录 print find 命令将匹配
  • ipad编写html,iPad HTML Focus

    Sorry folks I guess I have to bring you a bad news So much questions for HOW DO I FOCUS ON AN INPUT FIELD ON IPAD USING
  • c51两个定时器中断冲突_单片机学习day11—中断系统(外部中断 & 定时器/计数器)...

    51单片机的中断系统 非常非常非常重要 一 中断的概念 CPU在处理某一事件A时 发生了另一事件B请求CPU迅速去处理 中断发生 CPU暂时中断当前的工作 转去处理事件B 中断响应和中断服务 待CPU将事件B处理完毕后 再回到原来事件A被中
  • 蓝桥杯 算法训练 乘积最大Python实现(动态规划)详细

    资源限制 时间限制 1 0s 内存限制 256 0MB 问题描述 今年是国际数学联盟确定的 2000 世界数学年 又恰逢我国著名数学家华罗庚先生诞辰90周年 在华罗庚先生的家乡江苏金坛 组织了一场别开生面的数学智力竞赛的活动 你的一个好朋友
  • WPF应用无法从任务栏恢复(唤起)

    背景 两个window 一个在前 小屏播放视频 一个在后 全屏播放视频 点击切换按钮 两个window中的内容对调 当点击任意window上面的缩小按钮的时候 将所有的window的 windowState 设置为 minimized 期望
  • 数据结构—快速掌握如何手动求解关键路径

    看到一道题 分析如何手动求解关键路径 文末有题目出处 如上图 红点表示状态 边表示活动及其所需要的时间 这是用箭线表示活动 节点表示事件的一种网络图绘制方法 也称为双代号网络图 AOA 下面我们将利用其它快捷方法求出关键路径 方法一 逆推法
  • 美国国家安全局(NSA)网络攻击主战武器“酸狐狸”

    近日 国家计算机病毒应急处理中心对美国家安全局 NSA 酸狐狸 漏洞攻击武器平台 FoxAcid 进行了技术分析 该漏洞攻击武器平台是美国国家安全局 NSA 特定入侵行动办公室 TAO 也被称为 接入技术行动处 对他国开展网络间谍行动的重要
  • 乐高编程学c语言吗,乐高编程和少儿编程的区别

    大家好 我是时间财富网智能客服时间君 上述问题将由我为大家进行解答 乐高编程和少儿编程的区别如下 1 乐高编程是以调用编程模块指令让机器动起来为目的 通常需要编程的模块是已经写好存储在模块里的 学员做的只是将模块以不同的方式拼接组合起来 2
  • DataGridView控件常用属性

    DataGridView控件常用属性 1 AllowUserToAddRow 去掉最后一行添加行的选项 2 RowHeadersVisble 去掉第一列包含行标题的列 3 AutoSizeColumnsMode 可见列的自动调整大小 4 S
  • C++ 预处理器

    预处理器是一些指令 指示编译器在实际编译之前所需完成的预处理 所有的预处理器指令都是以井号 开头 只有空格字符可以出现在预处理指令之前 例如 include 指令 这个宏用于把头文件包含到源文件中 C 还支持很多预处理指令 比如 inclu
  • 关系型数据库和NoSQL数据库探讨

    在当今数据时代 数据量持续增长 数据种类不断增加 使得传统关系型数据库面临了很大的挑战 为了解决这些问题 新型数据库技术也应运而生 同传统关系型数据库进行对比 就可以更好地了解其优点和局限性 1 传统关系型数据库的弊端 在传统关系型数据库中
  • 怎么用Python实现微信自动回复,一文看懂

    都什么年代了 不会还有人用itchat吧 itchat早就寄了 在网上搜用Python实现微信自动回复的 搜来搜去全是用itchat 一运行全都不行 无奈只能自己用别的库实现 根据预定的csv数据自动回复 import numpy as n
  • C# 泛型List相关用法以及与ArrayList和数组三者的区别

    数组 首先在C 也是存在数组的 用法如下 一维 string s new string 2 s 0 a s 1 b s 0 c 修改 二维 string arr new string 3 5 表示三行五列的二维数组 1 1 1 1 1 1
  • 收到字节跳动 java岗offer后,他终于哭出了声!

    在小刘拿到offer的那天下午 他打了个电话给我 他诉说着对我的感谢 吐槽面试遇到的奇葩事儿 最后 他激动的说 建哥 我终于不用担心变成失业人员了 找工作有多可怕 小刘是我亲自带的第一届实习生 他聪慧 一点就透 踏实 不懂就问 不会就学 这
  • Java IO

    相关概念 Java IO Java的核心库java io提供了全面的IO接口 包括 文件读写 标准设备输出等 Java中IO是以流为基础进行输入输出的 所有数据被串行化写入输出流 或者从输入流读入 流 流是一个很形象的概念 当程序需要读取数
  • 如何实现make工具的降版本?

    为什么要降make版本 因为编译MTK 平台的Android source code报错 而且是莫名奇妙的错误 困扰很久 一 问题背景 Ubuntu 15 04以上的make版本都已经是4 0 官方目前推荐的编译环境还是基于Ubuntu 1