Compilation 使用静态链接编译wget、自编译(开放)ssl库链接问题
我试图用静态链接编译wget,但是我遇到了ssl问题。 我的安装程序没有安装ssl,所以我必须自己编译它,它看起来正常,下面是/usr/local/ssh/lib的列表:Compilation 使用静态链接编译wget、自编译(开放)ssl库链接问题,compilation,openssl,static-libraries,wget,Compilation,Openssl,Static Libraries,Wget,我试图用静态链接编译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 r
/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
有什么可能出错的提示吗?我为LinuxELF编译了openssl好的,看起来这是经典的“不能读自己写”问题。 上面我试图链接到ssh库,而不是ssl库 为了便于将来参考,使用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的头文件)
图书馆可以在ie中:
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。您能检查一下吗?Tnx。