由于删除了debian5.0系统,安装了新版本6.0, 以前的开发环境不复存在。进行了重新配置,让libcurl支持ssl, ssh, idn等。可是在编译应用程序的时候发现不能编译成静态版本,总是出现一堆的函数未定义引用(主要是ssl和ssh库里的函数)。很是郁闷,决定自己从源码编译安装这两个库。而这着实费了一番周折。从libcurl的库层次看(如下):
首先要安装zlib,然后是ssl, 其次是ssh2,最后才是libcurl. zlib从debian的分布源中安装即可。ssl是一个比较底层的库,系统的中的好多应用都依赖于此,选择从源码安装,在配置时路径选择默认,增加zlib,shared, threads支持,让后将其安装路径加到系统的默认搜索路径中。ssh2也是从源码安装,一路默认配置安装即可。最后对libcurl进行配置:
CFLAGS=-L/usr/local/lib LDFLAGS=-static ./configure --enable-ares --with-libidn --with-ssl=/usr/local/ssl(这里是ssl库的安装路径)。这样就可以了。
还有一点就是关于openssl的uninstall的问题,好像没有这个命令啊。我编译安装之后对系统进行了搜索,发现把其顶级安装目录删除即可,即这里的/usr/local/ssl
阅读(3039) | 评论(0) | 转发(0) |