Compiler errors 编译错误-缺少zlib.h

Compiler errors 编译错误-缺少zlib.h,compiler-errors,compilation,zlib,Compiler Errors,Compilation,Zlib,我试图使用IBM XL编译器在Blue Gene Q上编译软件,收到以下错误消息: "iostreams/zlib.cpp", line 19.10: 1540-0836 (S) The #include file "zlib.h" is not found. make[3]: *** [zlib.o] Error 1 我已经安装了新版本的zlib,并使用$HOME/zlib/include 我遗漏了什么吗?您已将库安装在非标准位置($HOME/zlib/)。这意味着编译器将不知道头文件在哪里

我试图使用IBM XL编译器在Blue Gene Q上编译软件,收到以下错误消息:

"iostreams/zlib.cpp", line 19.10: 1540-0836 (S) The #include file "zlib.h" is not found.
make[3]: *** [zlib.o] Error 1
我已经安装了新版本的zlib,并使用
$HOME/zlib/include


我遗漏了什么吗?

您已将库安装在非标准位置(
$HOME/zlib/
)。这意味着编译器将不知道头文件在哪里,您需要告诉编译器这一点

您可以使用
-I
(大写字母I)选项将路径添加到编译器用于搜索头文件的列表中

还请注意,
LD_LIBRARY_PATH
用于运行时链接器和加载程序,并在尝试运行应用程序时搜索动态库。要添加构建时链接器的路径,请使用
-L
选项

总之,命令行应该是这样的

$ c++ -I$HOME/zlib/include some_file.cpp -L$HOME/zlib/lib -lz

您缺少
zlib.h
头文件,在Linux上通过以下方式安装:

sudo apt-get install libz-dev
事实上,该模块在apt回购协议中显示为
zlib1g dev
,因此这是最新的调用(2019年2月):

在Fedora上:
sudo dnf安装zlib-devel
(在旧版本中:
sudo dnf安装libz-devel

这将为实现gzip和PKZIP中的deflate压缩方法的库提供开发支持文件


如果您已经使用了
zlib
库,请确保使用
-lz
编译代码源。请参阅:。

我也有同样的问题。然后我安装了zlib,问题仍然没有改变。然后我在我的.bashrc中添加了以下几行代码,它成功了。您应该用zlib安装路径替换该路径。(我没有root权限)


在openSUSE 19.2中,安装
patterns-hpc-development\u node
包为我解决了这个问题。

也许你可以从下载zlib.h,并将其放在目录中解决这个问题。

我对fedora 25也有同样的问题。解决方案是
sudo-dnf安装libz-devel
使用fedora 28,我不得不
sudo-dnf安装zlib-devel
而不是在Debian上尝试从ruby
gem
安装备份时遇到同样的问题。Had
致命错误:zlib.h:在
mkmf.log
中没有这样的文件或目录,并且
zlib丢失;在控制台中构建libxml2所必需的。@SmallChess考虑到OP说“我安装了一个新版本的zlib…”(强调我的),并将我的答案标记为已接受,也许您可以详细说明原因?仅仅因为一个答案有更多的选票并不意味着它是自动正确的。我觉得大多数投票支持kernob答案的人没有完全阅读这个问题。问题说zlib已经安装。但是没有提到devzlib包。单独安装zlib二进制文件(在大多数发行版中)不会安装zlib.h。然而,这两个答案完全回答了这个问题。大多数人可能没有使用zlib开发软件。而是通过编译来安装软件。因此,下面的票数较高。和上面的高级答案。
sudo apt install zlib1g-dev
export PATH =$PATH:$HOME/Softwares/library/Zlib/zlib-1.2.11/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/Softwares/library/Zlib/zlib-1.2.11/lib/
export LIBRARY_PATH=$LIBRARY_PATH:$HOME/Softwares/library/Zlib/zlib-1.2.11/lib/
export C_INCLUDE_PATH=$HOME/Softwares/library/Zlib/zlib-1.2.11/include/
export CPLUS_INCLUDE_PATH=$HOME/Softwares/library/Zlib/zlib-1.2.11/include/
export PKG_CONFIG_PATH=$HOME/Softwares/library/Zlib/zlib-1.2.11/lib/pkgconfig