usr/local/include 中没有 zlib.h 文件 如何获取

No zlib.h file in usr/local/include how to get it

所以我一直在尝试 运行 一个 C++ 程序,该程序在编译文件时需要 Zlib 库它给出了一个错误说 "zlib.h no such file or directory exists" 在查看 usr/local/include 时我发现该文件是不是我可以将文件复制到那个位置,或者我应该安装一些东西。我是 ubuntu 的新手所以请帮忙

嗯,临时解决

下载自:https://github.com/madler/zlib/blob/master/zlib.h
将文件放在与项目文件相同的文件夹中。

#include "zlib.h"

安装 zlib 使用

开发支持
sudo apt-get install zlib1g-dev

如果您不想或不需要使用完整的 zlib,可以很容易地编写将 zlib 函数 1:1 映射到普通文件函数的包装例程不支持压缩和解压。

//
//  dummy zlib.h
//

#pragma once
#include <stdio.h>

typedef FILE *gzFile;

int gzclose(gzFile file);
gzFile gzdopen(int fd, const char *mode);
gzFile gzopen(const char *path, const char *mode);
int gzread(gzFile file, void *buf, unsigned int len);


//
//  zlibDummy.cpp
//

#include <zlib.h>

int gzclose(gzFile file)
{
    return fclose(file);
}

gzFile gzdopen(int fd, const char *mode)
{
    return _fdopen(fd, mode);
}

gzFile gzopen(const char *path, const char *mode)
{
    return fopen(path, mode);
}

int gzread(gzFile file, void *buf, unsigned int len)
{
    return fread(buf, 1, len, file);
}