【问题标题】:Install curl with openssl使用 openssl 安装 curl
【发布时间】:2012-09-20 03:12:21
【问题描述】:

我刚刚从http://www.openssl.org/source/ [http://www.openssl.org/source/openssl-1.0.1c.tar.gz] 下载并安装了 OpenSSL

./config
make
make test
make install

现在我下载了 CURL - http://curl.haxx.se/download/curl-7.27.0.tar.gz。尝试使用 openssl 配置 curl 时出现以下错误 -

.............................................................
checking for ssl with RSAglue/rsaref libs in use... checking for SSL_connect in -lssl... (cached) no
no
configure: error: OpenSSL libs and/or directories were not found where specified!
[root@curl-7.27.0]# ls -l /usr/local/ssl
total 40
drwxr-xr-x 2 root root  4096 Sep 28 01:21 bin
drwxr-xr-x 2 root root  4096 Sep 28 01:21 certs
drwxr-xr-x 3 root root  4096 Sep 28 01:21 include
drwxr-xr-x 4 root root  4096 Sep 28 01:21 lib
drwxr-xr-x 6 root root  4096 Sep 28 01:21 man
drwxr-xr-x 2 root root  4096 Sep 28 01:21 misc
-rw-r--r-- 1 root root 10835 Sep 28 01:21 openssl.cnf
drwxr-xr-x 2 root root  4096 Sep 28 01:21 private
[root@curl-7.27.0]#

我不确定如何修复此错误?

【问题讨论】:

  • 在我的情况下,我安装了另一个 openssl 版本 1.0.2o,它被 curl 7.64 自动检测到

标签: curl libcurl


【解决方案1】:

在配置 libcurl 时试试这个

./configure --with-ssl --with-libssl-prefix=/usr/local/ssl

/usr/local/ssl 是 openssl 包含头文件和库的地方

/usr/local/ssl/
├── bin
├── certs
├── include
├── lib
├── man
├── misc
├── openssl.cnf
└── private

【讨论】:

    【解决方案2】:

    如果您使用 RHEL,并且想要使用静态链接库(独立二进制文件)构建 curl(例如 v7.45),您还可以:

    yum install openssl-devel # for headers and libraries
    # run `./buildconf` if you cloned curl git repo
    ./configure --with-ssl=/usr/include/openssl --disable-shared
    make
    

    您的二进制文件将在./src/curl 上生成。

    openssl-devel 1.0.1e 版安装:

    /usr/include/openssl
    /usr/include/openssl/aes.h
    /usr/include/openssl/asn1.h
    /usr/include/openssl/asn1_mac.h
    /usr/include/openssl/asn1t.h
    /usr/include/openssl/bio.h
    /usr/include/openssl/blowfish.h
    /usr/include/openssl/bn.h
    /usr/include/openssl/buffer.h
    /usr/include/openssl/camellia.h
    /usr/include/openssl/cast.h
    /usr/include/openssl/cmac.h
    /usr/include/openssl/cms.h
    /usr/include/openssl/comp.h
    /usr/include/openssl/conf.h
    /usr/include/openssl/conf_api.h
    /usr/include/openssl/crypto.h
    /usr/include/openssl/des.h
    /usr/include/openssl/des_old.h
    /usr/include/openssl/dh.h
    /usr/include/openssl/dsa.h
    /usr/include/openssl/dso.h
    /usr/include/openssl/dtls1.h
    /usr/include/openssl/e_os2.h
    /usr/include/openssl/ebcdic.h
    /usr/include/openssl/ec.h
    /usr/include/openssl/ecdh.h
    /usr/include/openssl/ecdsa.h
    /usr/include/openssl/engine.h
    /usr/include/openssl/err.h
    /usr/include/openssl/evp.h
    /usr/include/openssl/fips.h
    /usr/include/openssl/fips_rand.h
    /usr/include/openssl/hmac.h
    /usr/include/openssl/idea.h
    /usr/include/openssl/krb5_asn.h
    /usr/include/openssl/kssl.h
    /usr/include/openssl/lhash.h
    /usr/include/openssl/md2.h
    /usr/include/openssl/md4.h
    /usr/include/openssl/md5.h
    /usr/include/openssl/modes.h
    /usr/include/openssl/obj_mac.h
    /usr/include/openssl/objects.h
    /usr/include/openssl/ocsp.h
    /usr/include/openssl/opensslconf-x86_64.h
    /usr/include/openssl/opensslconf.h
    /usr/include/openssl/opensslv.h
    /usr/include/openssl/ossl_typ.h
    /usr/include/openssl/pem.h
    /usr/include/openssl/pem2.h
    /usr/include/openssl/pkcs12.h
    /usr/include/openssl/pkcs7.h
    /usr/include/openssl/pqueue.h
    /usr/include/openssl/rand.h
    /usr/include/openssl/rc2.h
    /usr/include/openssl/rc4.h
    /usr/include/openssl/ripemd.h
    /usr/include/openssl/rsa.h
    /usr/include/openssl/safestack.h
    /usr/include/openssl/seed.h
    /usr/include/openssl/sha.h
    /usr/include/openssl/srtp.h
    /usr/include/openssl/ssl.h
    /usr/include/openssl/ssl2.h
    /usr/include/openssl/ssl23.h
    /usr/include/openssl/ssl3.h
    /usr/include/openssl/stack.h
    /usr/include/openssl/symhacks.h
    /usr/include/openssl/tls1.h
    /usr/include/openssl/ts.h
    /usr/include/openssl/txt_db.h
    /usr/include/openssl/ui.h
    /usr/include/openssl/ui_compat.h
    /usr/include/openssl/whrlpool.h
    /usr/include/openssl/x509.h
    /usr/include/openssl/x509_vfy.h
    /usr/include/openssl/x509v3.h
    /usr/lib64/libcrypto.so
    /usr/lib64/libssl.so
    /usr/lib64/pkgconfig/libcrypto.pc
    /usr/lib64/pkgconfig/libssl.pc
    /usr/lib64/pkgconfig/openssl.pc
    

    【讨论】:

    • 我运行它但失败了:检查是否启用 Amiga 原生 SSL/TLS (AmiSSL)... 没有配置:错误:/usr/include/openssl/ is a bad --with-ssl前缀!
    【解决方案3】:

    使用标志 --with-darwinssl 解决这个问题

    使用 curl 源代码进入文件夹

    在这里下载 https://curl.haxx.se/download.html

    sudo ./configure --with-darwinssl
    make
    make install
    

    重启你的控制台就完成了!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-18
      • 2011-04-27
      • 1970-01-01
      • 1970-01-01
      • 2011-10-21
      • 1970-01-01
      • 2015-06-16
      相关资源
      最近更新 更多