我正在尝试从源代码编译"openssl-1.0.1j",但出现以下错误信息:
"/usr/bin/ld: cannot find -lz"。
我的环境是基于树莓派的debian wheezy。
我的文件目录结构如下:
├── zlib-1.2.8
├ ├── lib sources
├ ├── libz.a
├
├── openssl-1.0.1j
├ ├── lib sources
我已经成功地编译了zlib-1.2.8,方法如下:
我想获取文件树:
├── zlib-1.2.8
├ ├── 库源码
├ ├── libz.a
├
├── openssl-1.0.1j
├ ├── 库源码
├ ├── libcrypto.a
├ ├── libss.a
"/usr/bin/ld: cannot find -lz"。
我的环境是基于树莓派的debian wheezy。
我的文件目录结构如下:
├── zlib-1.2.8
├ ├── lib sources
├ ├── libz.a
├
├── openssl-1.0.1j
├ ├── lib sources
我已经成功地编译了zlib-1.2.8,方法如下:
$ cd ~/zlib-1.2.8
$ ./configure --static
$ make test
然后尝试按以下方式编译openssl-1.0.1j:
$ cd ~/openssl-1.0.1j
$ export CFLAGS="-I$HOME/zlib-1.2.8"
$ export CPPFLAGS="-I$HOME/zlib-1.2.8"
$ export LDFLAGS="-L$HOME/zlib-1.2.8"
$ export LIBS="-l$HOME/zlib-1.2.8/libz.a"
$ ./config threads zlib no-shared
$ make
我想获取文件树:
├── zlib-1.2.8
├ ├── 库源码
├ ├── libz.a
├
├── openssl-1.0.1j
├ ├── 库源码
├ ├── libcrypto.a
├ ├── libss.a
我漏掉了什么?
Configure
是否会尊重export LDFLAGS="-L$HOME/zlib-1.2.8"
? 还是会用自己的值覆盖它?如果是后者,那么您需要手动将其添加到Makefile.org
中。接着执行make clean && make dclean
。 - jww