`
wangxiaohigh
  • 浏览: 1423398 次
文章分类
社区版块
存档分类
最新评论

Linux下编译并使用 curl 静态库

 
阅读更多

windows下面编译并使用 curl 静态库我就不说了, 很简单。。。。。。

linux下面 编译后生成了 libcurl.a 文件,

但是在程序中静态链接 这个 libcurl.a 文件, 会发生很多的链接错误, 如果是动态链接 libcurl.a 文件则不会发生什么问题。

/usr/lib/libcurl.a(ssluse.o): In function `Curl_ossl_init':
(.text+0xcd1): undefined reference to `SSL_library_init'

/usr/lib/libcurl.a(ssluse.o): In function `Curl_ossl_connect_common':
(.text+0x1ba9): undefined reference to `SSL_get1_session'

上面随便挑几个错误。。。

后来经过一番折腾, 突然恍悟, 只需要添加下面的链接, 问题即可解决啊

-lcrypto -lidn -lssl /usr/lib/libcurl.a

这样编译生成的 可执行程序里面用命令

ldd 文件名 执行后, 依赖库里面已经没有 libcurl.so.4 的依赖项了。。。。

如果你用上面的选项还是出现链接错误,比如下面这样的东东

ldap.c:(.text+0x91): undefined reference to `ldap_url_parse'

请你编译 curl库的时候 用下面的指令生成 makefile文件

./configure --disable-ldap --disable-ldaps ,

编译好后在链接即可。

分享到:
评论

相关推荐

    curl 全平台静态库,包括 android,ios ,win,mac,linux

    curl 全平台静态库

    curl.tar.gz(linux下)

    linux下curl的源码,编译成静态库的步骤如下: (1)./buildconf (2)./configure --with-ssl=ssl目录(如果不需要编译ssl则可以不写) --prefix=生成目录 --enable-static --without-libidn make make install

    libcurl_7.52静态库

    VS2015平台下的libcurl-7.52静态库 用法: 1、包含include,添加lib目录中的libcurl.lib 2、再添加依赖库:ws2_32.lib wldap32.lib 3、添加预编译宏:USE_OPENSSL,CURL_STATICLIB

    Curl_7_78.zip

    Linux编译C++的Curl_7_78的动、静态库,亲测在Linux直接用,包含调用的.h头文件。

    Linux多线程服务端编程:使用muduo C++网络库

    《Linux多线程服务端编程:使用muduo C++网络库》主要讲述采用现代C++在x86-64 Linux上编写多线程TCP网络服务程序的主流常规技术,重点讲解一种适应性较强的多线程服务器的编程模型,即one loop per thread。...

    curl-nss-http2-release-64.tar.gz

    ubuntu20.04 编译,包含静态库和动态库64位release版本, 解压后,需要把lib路径添加到/etc/ld.so.conf才可使用,ldconfig

    curl-nss-http2-debug-64.tar.gz

    ubuntu20.04 编译,包含静态库和动态库64位debug版本, 解压后,需要把lib路径添加到/etc/ld.so.conf才可使用,ldconfig

    speedtest-rs

    如果您想要100%静态二进制文件,则可以在Linux上使用MUSL libc 要获得对此目标的支持,请使用rustup: rustup target add x86_64-unknown-linux-musl 要使用此新目标,请将--target标志传递给Cargo: cargo ...

    杰奇1.4 破解版+注册机

    有条件的可以考虑安装 GD库、CURL库,以及开放socket和共享内存支持,在以后的程序中可能会用到。 二、安装步骤 1、上传所有程序和模板文件,以下几个目录以及目录下所有文件的权限需设置成 777 blockcache - ...

    杰奇1.4 破解版

    有条件的可以考虑安装 GD库、CURL库,以及开放socket和共享内存支持,在以后的程序中可能会用到。 二、安装步骤 1、上传所有程序和模板文件,以下几个目录以及目录下所有文件的权限需设置成 777 blockcache - ...

    杰奇1.3标准版

    有条件的可以考虑安装 GD库、CURL库,以及开放socket和共享内存支持,在以后的程序中可能会用到。 <br> 二、安装步骤 <br>1、上传所有程序和模板文件,以下几个目录以及目录下所有文件的权限需设置成 777...

Global site tag (gtag.js) - Google Analytics