GCC C

「zlib」GCC编译错误-zlib

我抓不住时间,但我一直在追赶他

Posted by 云伴风行 on December 17, 2024

编译时找不到zlib.h:

1
2
3
4
misc.c:33:10: fatal error: zlib.h: No such file or directory
   33 | #include <zlib.h>   // gzFile, gzgets, gzopen, gzclose
      |          ^~~~~~~~
compilation terminated.

解决方法:

下载并安装zlib,注意下面的操作直接安装到当前路径下$PWD,因此先移动到你想要安装的路径:

1
2
3
4
5
6
7
8
9
10
11
12
# 替换成你的路径就行
cd /home/hfc/sofware/lib/
# 下载
wget https://zlib.net/zlib-1.3.1.tar.gz
# 解压缩
tar -zxvf ./zlib-1.3.1.tar.gz
mv zlib-1.3.1.tar.gz zlib && cd zlib
# 安装
./configure --prefix=$PWD
# 编译
make
make install

添加到环境变量, 首先查看zlib的安装路径

1
2
3
4
## 查看当前路径
echo $PWD
##
>> /home/hfc/sofware/lib/zlib

比如上面输为/home/hfc/sofware/lib/zlib,那么将安装路径添加到~/.bashrc

首先备份~/.bashrc文件

1
cp ~/.bashrc ~/.bashrc_bak

分别将zlib的安装路径添加到下面的环境变量中,在命令行输入

1
2
3
4
5
6
echo "export PATH=\$PATH:$PWD" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:$PWD/lib/" >> ~/.bashrc
echo "export LIBRARY_PATH=\$LIBRARY_PATH:$PWD/lib/" >> ~/.bashrc
echo "export C_INCLUDE_PATH=\$C_INCLUDE_PATH:$PWD/include/" >> ~/.bashrc
echo "export CPLUS_INCLUDE_PATH=\$CPLUS_INCLUDE_PATH:$PWD/include/" >> ~/.bashrc
echo "export PKG_CONFIG_PATH=\$PKG_CONFIG_PATH:$PWD/lib/pkgconfig" >> ~/.bashrc

激活

1
source ~/.bashrc

如果发现操作错了,可以将备份的~/.bashrc_bak文件拷贝一份,重新设置。

如果激活后还是提示找不到头文件,那么关闭终端并重新打开再尝试一下。

© 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!