我正在尝试使用静态链接编译wget,但是我遇到了ssl的问题。 我的设置没有安装ssl,所以我必须自己编译,它似乎没问题,这是/ usr / local / ssh / lib的列表:
/usr/local/ssl/lib> ls -la
total 2000
drwxr-xr-x 3 root root 4096 2012-03-22 14:28 .
drwxr-xr-x 9 root root 4096 2012-03-22 14:28 ..
-rw-r--r-- 1 root root 1752954 2012-03-22 14:28 libcrypto.a
-rw-r--r-- 1 root root 272388 2012-03-22 14:28 libssl.a
drw-r--r-- 2 root root 4096 2012-03-22 14:28 pkgconfig
尝试配置编译时:
wget-1.13> env LDFLAGS="-L/usr/local/ssh/lib" ./configure --with-ssl=openssl
.....
configure: error. openssl development libraries not found
任何提示可能有什么问题?我为linux-elf编译了openssl
答案 0 :(得分:3)
为了将来参考,使用openssl链接和编译静态wget的正确过程是:
$>env CPPFLAGS="-I/dir/to/openssl/include" LDFLAGS="-L/dir/to/ssl/lib" ./configure --with-ssl=openssl
包括可能是: 〜/ openssl / openssl-0.9.8u / include(已编译的openssl的头文件) 库可能在: usr / local / ssl / lib(包含libssl.a的文件夹)
然后编译:
$>make CPPFLAGS="-I/dir/to/openssl/include" LDFLAGS="-L/dir/to/ssl/lib -all-static"
二进制文件将位于src文件夹中。
请注意,在某些系统上,-all-static选项应该只是-static。