【系统软件】源码编译安装ZLIB——Could NOT find ZLIB(missing:ZLIB_LIBRARY ZLIB_INCLUDE_DIR

news2025/2/25 15:43:01

【系统软件】源码编译安装ZLIB——Could NOT find ZLIB(missing:ZLIB_LIBRARY ZLIB_INCLUDE_DIR

  • 前言
  • 一、简介
  • 二、源码下载
  • 三、解压、构建
  • 四、编译
  • 五、安装
  • 六、安装成功后如下图
  • 七、如何使用zlib中的include

前言

今天原本打算源码编译安装protobuf,但是在构建项目阶段报错如下“Could NOT find ZLIB(missing:ZLIB_LIBRARY ZLIB_INCLUDE_DIR”,

我们可以理解为,操作系统没有安装zlib。(or没有设置ZLIB_LIBRARY ZLIB_INCLUDE_DIR)

关于zlib的windows版本的安装教程,网上挺多的,我就不讲解了。这里讲解下windows系统下zlib源码编译安装zlib。(linux下源码编译安装网上挺多的 ,我就不讲了)

  • 只有源码编译安装的zlib,才会用有include文件夹。

一、简介

zlib was written by Jean-loup Gailly (compression) and Mark Adler (decompression).
zlib is designed to be a free, general-purpose, legally unencumbered – that is, not covered by any patents – lossless data-compression library for use on virtually any computer hardware and operating system. The zlib data format is itself portable across platforms.

翻译:

zlib由Jean-loup Gailly(压缩)和Mark Adler(解压缩)撰写。
zlib被设计成一个免费的、通用的、法律上不受限制的——也就是说,不受任何专利的保护——无损数据压缩库,可在几乎任何计算机硬件和操作系统上使用。zlib数据格式本身可以跨平台移植。

二、源码下载

  • 官网:http://www.zlib.net/
    我们下载的是zip版本的源码
    在这里插入图片描述

三、解压、构建

  • 前提:操作系统安装好了cmake

  • 解压
    如下图,cmd进入解压的文件下

  • 构建,
    如下图,输入cmake构建命令

cmake -B build
在这里插入图片描述

四、编译

  • 编译

cmake --build build
在这里插入图片描述

五、安装

正常安装应该是

cd build
cmake install

但是报错了,所以我换了一种方式,

  • 进入build目录,使用vs打开了我们构建的项目(管理员方式启动vs)
    在这里插入图片描述
  • 右击INSTALL,选择生成。
    如下图,我们发现zlib安装到了c盘:bin、lib、include
    在这里插入图片描述

六、安装成功后如下图

在这里插入图片描述

七、如何使用zlib中的include

  • zlib我目前用不到,用到的小伙伴可以参考解决方案中的example项目。作者针对每个接口都给出了具体的用法
    在这里插入图片描述

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

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

相关文章

图神经网络GNN GCN AlphaFold2 虚拟药物筛选和新药设计

文章目录 图神经网络1. Geometric Deep LearningRepresentation learning 表征学习机器学习的数据类型:序列、网格、图引出GNN 2. Graph Neural NetworksMachine Learning Lifecyclelearning graph is hardFeature Learning in GraphsWays to Analyze NetworksA Nai…

chatgpt赋能Python-python_plot标题

Python Plot 标题:如何让你的数据可视化更加引人注目 Python是数据科学和可视化领域中最受欢迎的编程语言之一。Python的可视化库让数据可视化变得非常容易、灵活和美观。 在创建一个数据可视化时,最重要的是让图表或图形作品的标题尽可能引人注目。这…

chatgpt赋能Python-python_plt_标题

Python plt:用Python创建出色的可视化图表 Python是一种广泛使用的高级编程语言,它被用于各种不同的领域,包括Web开发、数据科学、人工智能和计算机视觉等。Python拥有一个强大的生态系统,其中包括了大量的第三方库和工具&#x…

chatgpt赋能Python-python_property描述符

Python Property描述符:什么是Property? 介绍 在Python中,属性是一种非常强大的方式,在代码中隐藏数据并将其保护起来。我们可以使用属性来让代码更可读,更易于维护,并降低代码中的错误风险。 Python中&a…

一、服务端渲染技术NUXT

文章目录 一、服务端渲染技术NUXT1.1 什么是服务端渲染1.2 什么是NUXT 2、NUXT环境初始化2.1 下载压缩包2.2解压2.3修改package.json2.4修改nuxt.config.js2.5终端中进入项目目录安装依赖2.6 引入element-ui2.7 测试运行2.8 NUXT目录结构 3、封装axios3.1 安装axios3.2 封装axi…

抖音矩阵系统开发分析(附代码部分)

简介 本文档旨在介绍抖音SEO源码开发相关内容,包括技术架构、关键模块、实现原理等方面的内容。 技术架构 抖音SEO源码采用的是分布式架构。整个系统可以分为以下几个模块: 数据抓取模块:负责从抖音服务器抓取数据,并进行去重和…

一个公司,一个机器视觉工程师

​一个公司,一个机器视觉工程师。 大家觉得这种公司,这种情况可能很难,很尴尬。 其实一个公司,一个机器视觉工程师,公司业务上是有需求的,多数选择有经验的机器视觉工程师,我遇到的视觉人机器视觉粉丝里面还是比较多的。这样子的公司大多数是选择有经验的机器视觉工程师…

【22-23春】AI作业10-经典卷积网络

1.LeNet & MNIST LeNet是一种神经网络的模型,用于图像识别和分类。他包含 3 个卷积层,2 个池化层,1 个全连接层。其中所有卷积层的所有卷积核都为 5x5,步长 strid1,池化方法都为全局 pooling,激活函数…

一元函数的凹性concavity以及二阶导数

凹性(concavity)与函数导数的变化率有关。一个函数f是上凹(即抛物线方向开口向上),其导数f是增函数,也意味着f的导数(即f)是正数;类似的一个函数f是下凹(即抛物线方向开口向下),其导…

chatgpt赋能Python-python_plot_标题

Python Plot: 如何更好地可视化你的数据 如果你需要更好地理解你的数据,Python Plot是一个非常好的工具。在这篇文章里,我将向你介绍如何使用Python Plot来可视化你的数据。我们将讨论如何使用Python Plot创建各种不同类型的图形,以及如何使…

chatgpt赋能Python-python_os_system_隐藏cmd窗口

Python os.system函数 在Python中,os.system函数是一个非常常用的系统调用函数。它的作用是执行一个命令行语句。不过,使用os.system函数有时候会出现一个问题,就是会弹出一个命令行窗口。而在一些特殊场合下,我们可能希望这个命…

chatgpt赋能Python-python_plot坐标轴

Python绘图库中坐标轴的设置 介绍 Python是一种简单易学,功能强大的编程语言。它被广泛用于数据科学和可视化领域。Python绘图库中的坐标轴设置可以让我们更好地展示数据,让我们更轻松地理解数据。本篇文章将介绍Python绘图库中坐标轴设置的方法和技巧…

chatgpt赋能Python-python_plt颜色

Python plt颜色详解:掌握常用颜色与自定义颜色的技巧 在数据可视化的过程中,使用合适的颜色方案可以让图表更加清晰、易于理解。Python的matplotlib库中的plt模块提供了丰富的颜色方案供我们使用。在本篇文章中,我们将深入探讨plt颜色的基础…

Microsoft Office 2016安装

哈喽,大家好。今天一起学习的是office2016的安装,有兴趣的小伙伴也可以来一起试试手。 一、测试演示参数 演示操作系统:Windows 10 支持Win7、11安装,不支持WinXP系统 系统类型:64位 演示版本:SW_DVD5_Of…

py实现经典排序之冒泡和快排

文章目录 0、十大经典排序算法0.1 关于时间复杂度0.2 关于稳定性 1、冒泡排序(Bubble Sort)1.1 冒泡排序简介1.2 冒泡排序思路1.3 冒泡排序代码实现 2、快排2.1 快排简介2.2 快排思路2.3 快排代码实现 0、十大经典排序算法 0.1 关于时间复杂度 平方阶 (O(n2)) 排序 各类简单排…

mysql表操作

文章目录 mysql 操作表创建表创建表实例查看表结构修改表结构删除表结构删除表结构 mysql 操作表 mysql表操作至少有以下俩种: DDL【data definition language】 数据定义语言,用来维护存储数据的结构 代表指令: create, drop, alter DML【data manipu…

2023 conda 安装、配置环境变量、换源

0.先卸载干净再安装 1.下载安装包 这个就不要用镜像下载,官网很快的 Free Download | Anacondahttps://www.anaconda.com/download 2.安装软件 首先 NEXT,接着 I Agree 来到这个页面 选择下面的All Users,再接着往下 选择安装路径 建议…

chatgpt赋能Python-python_print快捷键

Python print快捷键——简化开发效率 作为Python开发者,我们经常需要使用print语句来调试代码。然而,在大型项目中,如果频繁使用print并手动打印变量名称和内容,会浪费大量时间,影响开发效率。此时,使用Py…

Charging management IC---IP5356

0 Preface/foreword 1 规格 2 特性 2.1 电池电压分辨率 内部采用14-bit ADC,最大能识别电压为4.4V,所以分辨率为:4.4/2^14 0.26855 mv 2.2 充电电流 VIN/VBUS充电电流大小,分辨率为:0.671387mA 2.3 放电电流 2.3.1 IOUT1 2.3…

操作系统第三章——内存管理(上)

空有凌云千般志,负了红颜负流年 文章目录 3.1.1 内存的基础知识知识总览什么是内存?有何作用?几种常用的数量单位指令的工作原理绝对装入可重定位装入(静态重定位)动态重定位从写程序到程序运行链接的三种方式知识回顾…