Centos 7.9如何使用源码编译安装curl最新版本

news2024/10/5 14:14:53

文章目录

    • 1、前言
    • 2、curl源代码下载
    • 3、openssl安装
    • 4、编译curl
      • 4.1、配置编译环境
      • 4.2、编译输出二进制curl程序
      • 4.3、安装编译后的curl
      • 4.4、编译完成检查
      • 4.5、验证安装

1、前言

Centos 7.9,由于系统为2017年发行,且以稳定性为主,部分工具版本较低,无法支持一些新的功能。如curl就相对较旧,默认为7.29版本,且无法从其他额外的镜像源获取到更新的版本,这就导致新的功能如–-connect-to参数(在7.49版本后开始支持)无法正常使用,此参数可以用来指定请求的地址。

image-20240509201553309

image-20240509201520485

2、curl源代码下载

打开官方下载页面:https://curl.se/download.html

找到最新的版本:

image-20240509201845834

也可以下拉到package栏选择其他版本:

image-20240509201945187

鼠标右键复制链接地址:

image-20240509202129804

传输到Linux设备本地:

wget /usr/local/src/curl https://curl.se/download/curl-8.7.1.tar.gz

image-20240509202349215

image-20240509203108149

下载完成之后,对其进行解压:

tar -zxvf curl-8.7.1.tar.gz

解压之后移动到对应路径:

image-20240509203158256

3、openssl安装

为了使curl能支持ssl功能,需要提前安装openssl,执行下列指令进行安装:

yum install -y openssl

4、编译curl

4.1、配置编译环境

在安装完成openssl之后,进入到对应curl源码目录下:

cd /usr/local/src/curl/curl-8.7.1

执行下列指令配置编译环境:

# 配置编译参数:/usr/local为指定的安装路径,--with-ssl表示需要支持ssl
./configure --prefix=/usr/local --with-ssl

image-20240509204059753

编译配置完毕执行如下:

image-20240510001825113

**注:**一定要提前安装openssl,否则在配置的过程中会出现无法找到openssl的错误。

configure: error: --with-openssl was given but OpenSSL could not be detected

image-20240510002204338

4.2、编译输出二进制curl程序

执行下列指令编译输出执行程序:

make

在完成编译环境配置后,编译执行完成后结果如下:

image-20240510002331180

在这一步已经有可执行的文件或库文件,但是还未安装到系统环境中,并且不是所有的文件都需要,因此需要额外的进行安装。

4.3、安装编译后的curl

执行下列指令,将编译生成的程序和文件安装到指定的位置,这里指定的位置即为./configure --prefix=/usr/local --with-ssl中的--prefix参数指定的位置:

sudo make install

安装完成如下:

image-20240510003031269

4.4、编译完成检查

检查编译完成的路径内容/usr/local,是否存在更新:有三项更新

  • 库文件在对应的lib路径,头文件在include路径,执行文件在bin路径

image-20240510003206371

进入到bin路径下查看:含更新后的可执行程序

image-20240510003253786

4.5、验证安装

最后,在系统的任意位置,执行curl --version检查当前的版本是否为我们编译安装的最新版:

image-20240510003520445

看到这里,明显成功安装了,可以正常使用最新版本的curl工具了,nice。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1669500.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

每日OJ题_贪心算法四⑥_力扣1262. 可被三整除的最大和

目录 力扣1262. 可被三整除的最大和 解析代码 力扣1262. 可被三整除的最大和 1262. 可被三整除的最大和 难度 中等 给你一个整数数组 nums,请你找出并返回能被三整除的元素最大和。 示例 1: 输入:nums [3,6,5,1,8] 输出:1…

chorme浏览器或者edge浏览器使用开发者模式

本篇文章主要讲解edge,因为它内核是chorme,还可以使用微软账号同步,谷歌翻译也凉凉了,edge还可以用翻译,推荐国内windows用户用它。 打开开发者模式 直接按F12点击右上角三个点...,点击更多工具&#xff…

如何通过iptables配置URL过滤白名单?

正文共:1111 字 18 图,预估阅读时间:1 分钟 我们刚刚测完了iptables配置URL黑名单过滤(如何通过iptables配置URL过滤黑名单?),整体效果还算不错。但是,在很多时候,可能我…

体验MouseBoost PRO,让Mac操作更高效

还在为Mac的右键功能而烦恼吗?试试MouseBoost PRO for Mac吧!这款强大的鼠标右键增强软件,能让你通过简单操作即可激活多种实用功能,让你的工作变得更加轻松。其高度定制化的设计,更能满足你的个性化需求。赶快下载体验…

Spring STOMP-消息处理流程

一旦STOMP的接口被公布,Spring应用程序就成为连接客户端的STOMP代理。本节描述服务端消息处理的流程。 spring-messaging模块包含消息类应用的基础功能,这些功能起源于Spring Integration项目。并且,后来被提取整合到Spring框架,…

<MySQL> 数据库基础

目录 一、数据库概念 (一)什么是数据库 (二)数据库存储介质 (三)常见数据库 二、数据库基本操作 (一)连接数据库 (二)使用数据库 (三&…

排除对象属性序列化的三种方式

说明:在项目里,经常可以看到以下日志内容,将对象序列化后直接打印出来,观察对象数据,判断当前处理逻辑正确与否。 (以下信息来自:https://www.tl.beer/randbankcard.html生成器,信息…

ChatGPT付费创作系统软件开发

uni-app框架:使用Vue.js开发跨平台应用的前端框架,编写一套代码,可编译到Android、小程序等平台。 框架支持:springboot/Ssm/thinkphp/django/flask/express均支持 前端开发:vue.js 可选语言:pythonjavanode.jsphp均支持 运行软件…

考研踩坑经验分享

文章目录 写在前面自身情况简介自身学习路线优点坑点 学习路线建议1、2和3月份3、4和5月份6、7和8月份9、10月份11、12月份 一些私货建议结尾 写在前面 考研是一件非常有盼头的事,但绝对不是一件容易的事。 如果你不能做好来年三月份出成绩时,坦然接受…

【Obsidian】视频笔记插件Media Extended的强大功能

我将开设一个专栏,介绍当下最好用的笔记软件Obsidian的使用经验和技巧。欢迎持续关注。 摘要:本文将首先向您介绍一款功能强大的笔记软件Obsidian,然后为您详细解析Obsidian的一款实用插件——Media Extended,帮助您更好地利用Obs…

【HarmonyOS】笔记八-图片处理

概念 开发者经常需要在应用中显示一些图片,例如:按钮中的icon、网络图片、本地图片等。在应用中显示图片需要使用Image组件实现,Image支持多种图片格式,包括png、jpg、bmp、svg和gif,该接口通过图片数据源获取图片&am…

Java | Leetcode Java题解之第85题最大矩形

题目&#xff1a; 题解&#xff1a; class Solution {public int maximalRectangle(char[][] matrix) {int m matrix.length;if (m 0) {return 0;}int n matrix[0].length;int[][] left new int[m][n];for (int i 0; i < m; i) {for (int j 0; j < n; j) {if (mat…

Leetcode—100274. 从魔法师身上吸取的最大能量【中等】

2024每日刷题&#xff08;135&#xff09; Leetcode—100274. 从魔法师身上吸取的最大能量 实现代码 class Solution { public:int maximumEnergy(vector<int>& energy, int k) {int n energy.size();int arr[n];int ans;for(int i n - 1; i > 0; i--) {arr[i…

Adobe After Effects AE v24.3.0 解锁版 (视频合成及视频特效制作)

Adobe系列软件安装目录 一、Adobe Photoshop PS 25.6.0 解锁版 (最流行的图像设计软件) 二、Adobe Media Encoder ME v24.3.0 解锁版 (视频和音频编码渲染工具) 三、Adobe Premiere Pro v24.3.0 解锁版 (领先的视频编辑软件) 四、Adobe After Effects AE v24.3.0 解锁版 (视…

使用LLaMA Factory来训练智谱ChatGLM3-6B模型

使用LLaMA Factory来训练智谱ChatGLM3-6B模型时&#xff0c;以下是一个训练过程&#xff1a; 1. 环境搭建 a. 安装Python和Anaconda 下载并安装适合你操作系统的Python版本&#xff08;推荐Python 3.10或更高版本&#xff09;。安装Anaconda&#xff0c;以管理Python环境和依…

最简单的Winapi编程窗口程序

以下是一个简单的使用 WinAPI 创建窗口的程序示例&#xff0c;大致了解下win32的一个窗口编程大致流程&#xff1a; #include <Windows.h>// 窗口过程函数 LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {switch (uMsg){case WM_DES…

【校园生活小程序_超详细部署】

校园生活小程序 1 完整小程序源码2 运行环境3 初次运行3.1 启动后端程序3.1.1 导入项目&#xff0c;找到项目的pom.xml文件&#xff0c;点击ok进行打开。3.1.2 创建数据库并插入内容 3.1.3 配置项目结构信息3.1.4 配置Tomcat服务器3.1.5 正式启动后端项目3.1.6出现BUG3.1.7 解决…

DLP数据防泄密产品选型时 要注意哪些要素?

DLP&#xff08;Data Loss Prevention&#xff0c;数据丢失防护&#xff09;产品是一套用于防止敏感数据泄露的技术解决方案。它们通过监控、检测和阻止敏感数据的传输来保护企业的信息资产。所以很多企业会选择DLP数据防泄密产品来保护数据安全。 DLP数据防泄密产品的核心功能…

快手短剧,和爱优腾踏入同一条河流

文丨黄小艺 “我们定制短剧的重心排序分别是抖音、淘宝、快手。”MCN机构从业者周明&#xff08;化名&#xff09;说道&#xff0c;“无论是单条还是品牌冠名剧&#xff0c;我们在快手短剧拿到的收益都相对偏低。” 近期&#xff0c;商业数据派和多家机构创作者沟通后发现&am…

PC的体系结构

冯诺依曼体系结构 冯诺依曼体系结构&#xff0c;也称为冯诺依曼架构&#xff0c;是一种计算机架构的设计概念&#xff0c;由20世纪中叶的数学家和物理学家约翰冯诺依曼提出。这种架构的核心特点是将程序指令和数据存储在同一块可读写的存储器中。这样做的优点是简化了计算机的…