`

Ubuntu12.04 链接libcurl静态库

 
阅读更多
Ubuntu12.04 链接libcurl静态库


> wget http://curl.haxx.se/download/curl-7.29.0.tar.gz

> tar zxvf curl-7.29.0.tar.gz

> cd curl-7.29.0

> ./configure --prefix=/usr/local/curl --disable-shared --enable-static --without-libidn --without-ssl --without-librtmp --without-gnutls --without-nss --without-libssh2 --without-zlib --without-winidn --disable-rtsp --disable-ldap --disable-ldaps --disable-ipv6

> make

> sudo make install
> vi a.c
#include <curl/curl.h>
int main() {
printf("%s\n", curl_version());
return 0;
}

> curl-config --static-libs
/usr/local/curl/lib/libcurl.a -lrt

> gcc a.c -static $(/usr/local/curl/bin/curl-config --static-libs --cflags)


> file a.out
a.out: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), statically linked, for GNU/Linux 2.6.24, BuildID[sha1]=0x251f05855bb8e2e633171019d5e6c4bcc3d80a80, not stripped

> ./a.out
libcurl/7.29.0

注意我这里不需要其它功能不需要ssl等,这里全disable掉,不然会在连接时报错:
如:url.c|| undefined reference to ‘idn_free’
我就在这里郁闷了半天。
如果你没有disable掉,但你的机器上又没有安装相应的库,link时也会报错。
./configure --prefix=/usr/local/curl --disable-shared --enable-static --without-libidn --without-ssl --without-librtmp --without-gnutls --without-nss --without-libssh2 --without-zlib --without-winidn --disable-rtsp --disable-ldap --disable-ldaps --disable-ipv6

  curl version:     7.29.0
  Host setup:       i686-pc-linux-gnu
  Install prefix:   /usr/local/curl
  Compiler:         gcc
  SSL support:      no      (--with-{ssl,gnutls,nss,polarssl,cyassl,axtls,winssl,darwinssl} )
  SSH support:      no      (--with-libssh2)
  zlib support:     no      (--with-zlib)
  krb4 support:     no      (--with-krb4*)
  GSSAPI support:   no      (--with-gssapi)
  SPNEGO support:   no      (--with-spnego)
  TLS-SRP support:  no      (--enable-tls-srp)
  resolver:         default (--enable-ares / --enable-threaded-resolver)
  ipv6 support:     no      (--enable-ipv6)
  IDN support:      no      (--with-{libidn,winidn})
  Build libcurl:    Shared=no, Static=yes
  Built-in manual:  enabled
  --libcurl option: enabled (--disable-libcurl-option)
  Verbose errors:   enabled (--disable-verbose)
  SSPI support:     no      (--enable-sspi)
  ca cert bundle:   /etc/ssl/certs/ca-certificates.crt
  ca cert path:     no
  LDAP support:     no      (--enable-ldap / --with-ldap-lib / --with-lber-lib)
  LDAPS support:    no      (--enable-ldaps)
  RTSP support:     no      (--enable-rtsp)
  RTMP support:     no      (--with-librtmp)
  metalink support: no      (--with-libmetalink)
  Protocols:        DICT FILE FTP GOPHER HTTP IMAP POP3 SMTP TELNET TFTP



   KB94248  - How To Use the C Run-Time
              http://support.microsoft.com/kb/94248/en-us

   KB140584 - How to link with the correct C Run-Time (CRT) library
              http://support.microsoft.com/kb/140584/en-us

   KB190799 - Potential Errors Passing CRT Objects Across DLL Boundaries
              http://msdn.microsoft.com/en-us/library/ms235460
分享到:
评论

相关推荐

    libc6 for ubuntu12.04

    标题“libc6 for ubuntu12.04”涉及的是Ubuntu 12.04操作系统中的一个关键系统库——libc6。这个标题表明这是一个针对该特定版本Ubuntu的libc6软件包,它是Linux系统中核心的C语言运行时库。 **libc6详解** libc6...

    ubuntu12.04 SSH升级到OpenSSH_7.9p1, OpenSSL 1.1.1b

    原来的ssh扫描报太多漏洞了,整理了下一键安装的脚本直接升级到最新的;...#update Ubuntu12.04 : OpenSSH_7.9p1, OpenSSL 1.1.1b 26 Feb 2019 #old : OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 Mar 2012

    ubuntu 12.04 使用手册1—4

    《Ubuntu 12.04 使用手册1—4》是一套专为Ubuntu 12.04 LTS(长期支持版)用户编写的详尽指南,旨在帮助初学者和进阶用户掌握这一开源操作系统的基本操作与高级技巧。Ubuntu 12.04,代号“Precise Pangolin”,是...

    Ubuntu12.04 nginx python uwsgi Django安装步骤

    Ubuntu 12.04 下安装 Nginx、Python、uWSGI 和 Django 的步骤 在本文中,我们将介绍如何在 Ubuntu 12.04 环境下安装 Nginx、Python、uWSGI 和 Django。这些技术栈组合是非常流行的 Web 应用程序开发环境。 一、...

    Ubuntu12.04菜鸟使用手册合集

    【Ubuntu12.04菜鸟使用手册合集】是一份专为初学者设计的资源,旨在帮助用户熟悉Ubuntu 12.04操作系统的基本操作和功能。Ubuntu是基于Debian的开源Linux发行版,以其易用性和稳定性而受到全球用户的喜爱。这份合集...

    Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程

    Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程Ubuntu12.04菜鸟使用手册合集+...

    学习ubuntu12.04入门指南

    《学习Ubuntu 12.04入门指南》是一份针对初学者的详尽教程,旨在帮助用户熟悉并掌握Ubuntu 12.04 LTS(长期支持版)操作系统的基础操作和特性。Ubuntu是基于Linux内核的开源操作系统,以其用户友好、易用性和强大的...

    Ubuntu 12.04 菜鸟完全使用教程

    如果在安装过程中遇到库文件的问题,需要手动解决依赖问题,例如通过软链接(ln -s)解决库文件版本问题,安装缺少的库文件。 - **宽带用户联网** 宽带用户联网较为简单,如果使用无线网卡,直接通过图形界面或...

    Ubuntu 12.04 菜鸟使用手册(全)

    **Ubuntu 12.04 菜鸟使用手册(全)** Ubuntu 12.04 是一个基于Debian的开源操作系统,以其用户友好性和稳定性而受到广大用户的喜爱。这个版本,也被称作Precise Pangolin(精确的穿山甲),在2012年发布,提供长达...

    用 VMware 安装 Ubuntu 12.04详细过程图解

    用 VMware 安装 Ubuntu 12.04详细过程图解

    ubuntu12.04常用命令

    ### Ubuntu 12.04 常用命令解析 #### 文件内容查看命令 在Linux环境中,特别是Ubuntu 12.04系统中,经常需要查看文件内容。本篇文章将重点介绍如何使用`head`、`tail`以及`sed`等命令来查看文件的部分内容。 #####...

    Ubuntu12.04下编译成功的APUE附带源码

    例如,修改CC变量为`gcc`,如果有需要链接的库,确保链接选项正确。 在确保一切准备就绪后,执行编译命令: ```bash make ``` 如果编译过程中出现错误,检查错误信息并根据提示进行相应的修正。这可能涉及到更新...

    ubuntu12.04服务器入门指南

    《Ubuntu 12.04服务器入门指南》是一份针对Ubuntu 12.04操作系统服务器版本的使用指导文档。这份指南详细介绍了如何在Ubuntu 12.04系统上安装和配置各种服务器应用,从而满足用户特定的需求。它是通过一系列具体任务...

    Ubuntu 12.04下如何安装MySQ

    Ubuntu 12.04下如何安装MySQL ,我按照这文档,已经成功在ubuntu 12.04安装成功mysql!

    ubuntu12.04安装及配置过程详解

    ### Ubuntu 12.04 安装及配置过程详解 #### 一、准备工作 **1. 下载 Ubuntu 12.04 镜像文件** - **32位与64位的选择:** - 建议大多数用户选择32位版本,除非您的计算机硬件支持64位并且您需要利用更多的RAM资源...

    ubuntu12.04 vim 配置

    最全,最好用 自己试试啊ubuntu12.04 vim 配置

    ubuntu12.04共享虚拟机上网

    ubuntu12.04 server版本,虚拟机共享宿主机的无线网上网,亲测,有图。

    ubuntu12.04apt-get源

    Ubuntu12.04的apt-get搜狐源,直接下载至/etc/apt/下即可,执行apt-get update

Global site tag (gtag.js) - Google Analytics